История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...

История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...

Невозможно инициализировать объединение более чем одним агрегатным членом

2022-10-05 65
Невозможно инициализировать объединение более чем одним агрегатным членом 0.00 из 5.00 0 оценок
Заказать работу

Вверх
Содержание
Поиск

Cannot initialize union with more then one aggregate member

При инициализации объединения агрегатным инициализатором в фигурных скобках может быть указан только инициализатор для первого члена объединения. Не используйте инициализаторы для нескольких членов объединения. Не используйте инициализатор, тип которого не соответствует типу первого члена объединения. См. 8.5.1 [15]

union U { float f; int i; }; void g() { U u = {3.14, 10};   }

FEC00208 ERROR

Слишком много инициализаторов для агрегата '%s'

Extra initializer in aggregate '%s'

При инициализации агрегата в фигурных скобках не допускается указывать больше инициализаторов чем число членов или элементов агрегата. См. 8.5.1 [6]

void g() { char s[2] = {'a', 'b', 'c'}; }

FEC00209 ERROR

Использование списка инициализаторов для инициализации объекта типа '%s' без конструкторов

Cannot use list of initializers to initialize object of type '%s' without constructors

Скобочный инициализатор '()' может содержать список выражений только при инициализации объекта классового типа. При инициализации объектов прочих типов скобочный инициализатор не может содержать более одного выражения. См. 8.5 [11]

void g() { int* ptr = new int(10, 10); }

FEC00210 ERROR

Недопустимый инициализатор для массива '%s'

Illegal initializer for array '%s'

Указанный массив не может быть инициализирован использованным инициализатором. Массив является агрегатом и инициализируется заключенным в фигурные скобки списком инициализаторов. Массив символов ('char[]' и 'wchar_t[]') может быть также инициализирован строковым литералом. См. 8.5.1, 8.5.2 [1]

int a[] = 10;

FEC00211 ERROR

'%s' не является базовым классом для '%s'

'%s' is not a base of '%s'

В данном контексте требуется, чтобы 'класс A' был базовым классом для 'класс B'. См 7.3.3 [4] ('using')

class A //: public B { int f(); }; class B { using A::f; };

FEC00212 ERROR

В явном приведении типа должно быть одно выражение

Must be one expression in an explicit type cast

FEC00213 ERROR

Функция преобразования не может быть статической

Conversion function cannot be static

FEC00214 ERROR

Имя деструктора должно соответствовать имени класса

Destructor name must match the class name

Имя деструктора должно быть составлено из символа '~', непосредственно за которым следует имя класса деструктора. Символ '~' вместе с именем класса деструктора могут быть заключены в круглые скобки '()', которые игнорируются. При явном вызове деструктор подчиняется обычным правилам для функций-членов класса, а именно если объект класса, для которого вызывается деструктор, не является объектом класса деструктора или объектом класса, производного от класса деструктора, то поведение программы не определено. См. 12.4 [1], 12.4 [12]

void f() { class A {} a; a.~B(); }

FEC00216 ERROR

Рассогласование типов при инициализации '%s' '%s'

Type mismatch in initialization of '%s' by '%s'

Тип результата инициализирующего выражения не может быть приведен к типу инициализируемой сущности. См. 8.5 [14]

int* pointer = 1;

FEC00217 ERROR

Операция 'delete' не может быть применена к объекту типа '%s'

Operator 'delete' cannot be applied to an object of type '%s'

Операнд операции 'delete' должен иметь указательный тип или классовый тип с одной функцией преобразования к указательному типу. См. 5.3.5 [1]

void f() { delete 1; }

FEC00218 ERROR

Описание пространства имен должно находиться в глобальной области действия или в области действия пространства имен

Namespace definition must appear in the global scope or in a namespace scope

Не описывайте пространства имен в области действия функций или классов. См. 7.3 [4]

void f() {   namespace N {} }

FEC00219 ERROR

Невозможно использование ранее описанного имени '%s' в качестве имени пространства имен

Cannot use the previously defined name '%s' as a namespace name

Имя пространства имен не должно быть объявлено ранее в той же области действия в каком-либо другом качестве. См. 7.3.1 [2]

class N {}; namespace N {}

FEC00220 ERROR

Битовое поле не может быть статическим членом класса

A bit-field cannot be a static member

Не объявляйте битовые поля со спецификатором 'static'. См. 9.6 [3]

English comment

class A { static int bits: 4; };

FEC00221 ERROR

Битовое поле должно иметь целочисленный или перечислимый тип

A bit-field must have integral or enumeration type

Не объявляйте битовые поля других типов. См. 9.6 [3]

class A { float bits: 4; };

FEC00222 ERROR

Статическая или встроенная функция '%s' объявлена, но не описана

Static or inline function '%s' is declared but not defined

FEC00224 ERROR

Невозможно инициализировать нестатические члены класса (необходимо использовать ctor-инициализаторы)


Поделиться с друзьями:

Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...

История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...



© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.018 с.