Вопросы по теме 'initialization-list'

Передать этот объект в список инициализации
Я сократил проблему до следующего примера кода: class Charizard { //truck trainer &myTrainer; public: Charizard(trainer &tMyTrainer); }; class trainer { Charizard myPokemon; public: trainer(); };...
983 просмотров

С++ самостоятельно в списке инициализации
у меня есть этот фрагмент кода class Osoba{ Osoba(char* imie,int wiek){ this->imie=new char[strlen(imie)+1]; strcpy(this->imie,imie);...
335 просмотров
schedule 19.05.2023

Недостаток большого списка инициализации?
У моего работодателя принято использовать списки инициализации в конструкторе, потому что это более эффективно. Однако я разрабатываю класс с 45 элементами данных, требующими инициализации. В соответствии с политикой это должно быть сделано в...
403 просмотров
schedule 11.12.2022

Можно ли использовать переменные-члены для инициализации других членов в списке инициализации?
Рассмотрим следующую (упрощенную) ситуацию: class Foo { private: int evenA; int evenB; int evenSum; public: Foo(int a, int b) : evenA(a-(a%2)), evenB(b-(b%2)), evenSum(evenA+evenB) { } }; Когда я создаю Foo следующим...
4777 просмотров

можно ли использовать функции-члены для инициализации переменных-членов в списке инициализации?
Хорошо, переменные-члены могут быть используется для инициализации других переменных-членов в списке инициализации (с учетом порядка инициализации и т. д.). Как насчет функций-членов? Чтобы быть конкретным, является ли этот фрагмент допустимым в...
17523 просмотров
schedule 19.12.2023

C++ - запустить функцию перед инициализацией члена класса
У меня есть 2 класса управления ресурсами DeviceContext и OpenGLContext , оба являются членами class DisplayOpenGL . Время жизни ресурса привязано к DisplayOpenGL . Инициализация выглядит так (псевдокод): DeviceContext m_device =...
7548 просмотров

Каков порядок инициализации членов класса?
Я только что прочитал в этот ответ , что если у вас есть следующий код class Base { public Base() { } } class One : Base { string test = "text"; } class Two : Base { string test; public Two() { test =...
384 просмотров
schedule 02.11.2022

initializer_list в списке инициализации
Я хочу инициализировать базовый класс с помощью std::initializer_list . struct A : public std::array<int, 4> { // This constructor works fine A() : std::array<int, 4>{{ 1, 2, 3, 4 }} { } // THIS CONSTRUCTOR FAILS TO...
461 просмотров

инициализировать член некоторого класса в списке инициализации, если член является классом шаблона
[Решено]: проблема заключалась не в инициализации класса шаблона, а в специфичной для кода проблеме использования неопределенного макроса внутри конструктора класса шаблона. Ошибка компилятора не жаловалась на неопределенный символ, но была...
101 просмотров
schedule 08.06.2023

Список инициализации C ++ в конструкторе
Я пытаюсь инициализировать экземпляр класса под названием «Winery», используя список инициализации в конструкторе для другого класса под названием «List». Проблема в том, что когда я передаю конструктору Winery винный завод для копирования, он не...
392 просмотров
schedule 22.06.2022

Идиома именованных параметров с использованием указателя на частный метод класса
Я застрял с ошибкой компиляции C ++, когда делал что-то, что, вероятно, не совсем "обычное". Чтобы упростить задачу, я просто переписал механизм, который я пытаюсь использовать, в более удобном для чтения виде, и я проверил, что у меня такая же...
122 просмотров

Сколько инициализации может/должно быть в списках инициализации C++
Это мой первый пост. Я полагаю, что знаю лучшие практики по stackoverflow, но, вероятно, не на 100%. Я считаю, что нет конкретного поста, посвященного моему допросу; также я надеюсь, что это не слишком расплывчато. Я пытаюсь найти хорошие...
404 просмотров

Почему я не могу использовать оператор стрелки в списке инициализации?
Я новичок в С++. Недавно, когда я практиковался в написании связанного списка, я попытался использовать список инициализации для моего конструктора класса, чтобы назначить NULL в head-> next. В конструкторе класса он предупредил, что мой оператор...
645 просмотров

Когда список инициализации просматривается C++
Я пытаюсь понять, когда на список инициализации ссылаются (участвуют) во время создания экземпляра нестатического члена базового класса и класса. Я прочитал эту статью и эта статья, в которой резюмируется порядок инициализации класса (я...
70 просмотров

Инициализация вектора‹строка› двойными фигурными скобками
Может ли кто-нибудь объяснить разницу в поведении между инициализацией с помощью двойных и одинарных фигурных скобок в приведенном ниже примере? Код 1: vector<string> v = {"a", "b"}; string c(v[0] + v[1]); cout << "c = " <<...
7091 просмотров
schedule 29.01.2023

С++ 11 инициализация по умолчанию/инициализация значения/прямая инициализация
Меня в основном смущает понятие различной инициализации в С++, особенно в c++11 стандарт. Меня особенно смущает случай, когда объект создается с помощью new (релевантного или нет), и предоставляется список инициализаторов (который соответствует...
85 просмотров