Задать вопрос
Этот вопрос закрыт для ответов, так как повторяет вопрос Почему () инициализация не компилируется?
rundll32
@rundll32

Почему я не могу инициализировать свою структуру как примитивы языка?

int a(10); // работает
MyStruct b(); // не работает
MyStruct c = MyStruct(); // работает, но это уже не то

И не будет работать даже с созданием конструктора по умолчанию для MyStruct. Я бы понял такое поведение, если бы int был классом, но по идее это тоже структура.
  • Вопрос задан
  • 121 просмотр
Подписаться 1 Простой
Решения вопроса 1
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
int a(10); // работает
MyStruct b(); // не работает

смотри, я пофиксил твой кейс:
int a(); // не работает
MyStruct b(); // не работает

-- теперь одинаково не работает. Ну т.е. одинаково работает, но вместо определения переменной объявляет функцию.
Или так:
int a(10); // работает
MyStruct b(10); // работает

если завести у MyStruct конструктор с целочисленным параметром.
Если серьёзно, то в чём проблема-то?
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы