Окончательное решение вопроса с error C2593: 'operator +' is ambiguous для cout << goo + 5 << endl; note: could be 'Num Num::operator +(Num)' —...
Ronin_, и с какими же сообщениями g++ из пакета TDM GCC не компилирует?
Ох уж эта кривая студия с её "поддержкой" плюсов :)
Я предпочитаю читать стандарт или выжимки из него, вроде тех ссылок, что я привёл выше. Все эти интуитивные псевдорассуждения меня не интересуют....
:facepalm: Ссылки не имеют никакого отношения к указателям. То, что они где-то реализованы через указатели — с точки зрения стандарта и семантики...
Вот тут http://rextester.com/l/cpp_online_compiler_visual работает. _MSC_VER там равен 1900, т.е. это MSVC++ 14.0 (Visual Studio 2015)
Ronin_, главное, что неконстантная ссылка не может захватывать временные объекты. Нравится по значению, а не по константной ссылке --- передавай...
Оператор вывода перегружен НЕкорректно для класса Num. Параметром должен быть const Num&. Тогда всё работает....
У тебя все крит. системы работают под Windows Vista, с кодом, скомпилированным mingw? Читал. 10 лет назад. В том, пионерском, возрасте меня это...
Не размера массива, а числа элементов, я это хотел написать.
У меня тут хард на 250 GB завалялся. Давай я тебе подарю, а то смотрю у тебя совсем всё плохо, раз 6 кб для тебя это проблема. :lol:
https://godbolt.org/g/5C16Xm да вроде векторизуются
Куда-то ещё стандартные complex float/double не завезли?!
Небольшое исправление: просто b{Ints...} вместо b({Ints...})
Обязан. По стандарту, sizeof массива должен быть равен произведению размера массива на sizeof элементов. Так что, места для дополнительных...
#include <utility> class bar { public: bar(int) {} }; template<int N> class foo { bar b[N]; template<int... Ints>...
Имена участников (разделяйте запятой).