Баг компилятора. Массив в шаблонном классе: default constructor of struct is not defined
Оказывается, шаблон тут ни при чём. Всё и без него прекрасно не компилируется:
struct A { A() { } A arr[]; // 'arr' - default constructor of struct 'A' is not defined }; A a;
Такой код выжрет всю память.
С чего вдруг?
Рекурсия.
Рекурсия.
Вы чего-то путаете.
Скорее не понимаю, как здесь не может не быть рекурсии. Кто-нибудь рассудит.
Скорее не понимаю, как здесь не может не быть рекурсии. Кто-нибудь рассудит.
Ну это ж вы делаете какие-то заявления. С вас и объяснения.
К слову, данный код у меня прекрасно компилировался и работал на старых билдах, но я всё-равно с любопытством выслушаю вашу версию )
Рекурсия.
Кстати, VС это еще на стадии компиляции чухнул ))
class Amba { public: Amba _Arr[1]; }; 1>speed.cpp(2503): error C2148: total size of array must not exceed 0x7fffffff bytes
Кстати, VС это еще на стадии компиляции чухнул ))
Билд 1881. Баг компилятора. Конструктор задан. Если же убрать этот конструктор, то компилируется.