Описание тега default-initialization

Это инициализация, выполняемая, когда переменная создается без инициализатора.
1 ответ

Неопределенность между инициализацией по умолчанию и инициализацией значения

Я нашел много статей, объясняющих различие между "инициализацией по умолчанию и инициализацией значения", но на самом деле я не совсем понял. Вот пример: class A{ public: int x; }; int main(){ A a;// default initialization so x has undefined value. …
6 ответов

Как сделать так, чтобы переменная зависела от других переменных внутри класса?

Что не так с переменной international_standard_book_number? Как я могу сделать так, чтобы он менялся, когдаisbn_field_i изменения? #include <iostream> #include <string> class ISBN { private: unsigned int isbn_field_1 = 0; unsigned int is…
1 ответ

вопрос об инициализации по умолчанию в c

Я готовлюсь к интервью, и этот вопрос меня немного сбивает с толку. Был бы признателен за ваш совет. Что не инициализируется по умолчанию? Последняя переменная статического массива, в котором первые переменные явно инициализируются в инструкции. Чле…
02 авг '20 в 10:24
2 ответа

Безопасная инициализация массива std:: bools?

Учитывая это объявление массива и инициализацию массива: std::array<bool, 20> invalid_params{}; Могу ли я предположить, что все элементы в массиве всегда будут инициализированы значением false, или лучше сделать это явно?
2 ответа

Инициализация значения экземпляра по умолчанию в java

Я пытаюсь проверить значение по умолчанию для переменных экземпляра (т.е. 0 здесь) в сгенерированном байт-коде . я вижу <init>() вызывается, и если я печатаю переменную экземпляра внутри конструктора, я вижу getfield требовалось, но тогда где …
0 ответов

инициализация по умолчанию, инициализация значения и инициализация объекта в классе не выполняются должным образом? [закрыто]

Вам может показаться, что код длинный, и я пишу много вещей, но поверьте мне, это довольно просто. Я сослался на эти два ответа на переполнение стека, чтобы понять это. post1 и post2 Код #include <iostream> class A { public: int k1=3; float f1…
0 ответов

Имеют ли объекты встроенных типов, инициализированные по умолчанию в безымянном пространстве имен, четко определенное значение по умолчанию?

Насколько я знаю, мы должны использовать безымянное пространство имен для глобальных объектов, которые мы хотим сделать локальными для единицы перевода, а не определять эти объекты как глобальные объекты. Таким образом, объекты там неявно статичны. …
2 ответа

Почему назначенные инициализаторы инициализируют элементы данных нулями?

Ниже приведен пример cppref для назначенных инициализаторов : struct A { int x; int y; int z; }; A b{.x = 1, .z = 2}; // ok, b.y initialized to 0 По умолчанию все фундаментальные типы инициализируются по умолчанию, а не нулями в C++. Почему назначен…
1 ответ

Почему член типа класса нуждается в инициализации?

Я читаю о конструкторах в С++. Я наткнулся на этот пример: #include <iostream> using namespace std; class NoDefault { public: NoDefault(const std::string&); }; struct A { NoDefault my_mem; }; int main() { A a; return 0; } Это дает это сооб…
1 ответ

c++11 - нулевая инициализация членов вместо default-init

В приведенном ниже коде я ожидаю, что члены будут инициированы с помощью gargabe, поскольку они не упоминаются в списке членов-инициалов вызываемого конструктора (с двумяintпараметры). Вместо этого я постоянно получаю0в обоихiиjизa,bиcи я не понимаю…
1 ответ

Инициализация массива объектов, созданных в куче

Учитывая нетривиальную структуру данных: claas MyClass { public: MyClass():x(0), p(nullptr) {} private: int x; int* p; }; Есть ли какая-либо гарантия, предоставляемая спецификацией С++, что конструктор по умолчанию будет вызываться для каждого экзем…
0 ответов

Продление срока службы инициализированной по умолчанию const ref& в совокупности

Я знаю, что привязка значений prvalues ​​к переменным const ref продлит срок службы временных переменных. Теперь я подумал, что было бы умно иметьstruct optionsкоторый содержит поле const refB_options(который используется для инициализации подкласса…
1 ответ

Определен ли порядок инициализации элементов массива по умолчанию?

Когда массив инициализируется по умолчанию, определяется ли порядок, в котором его элементы инициализируются по умолчанию, стандартом C++? В качестве примера: гарантированно ли следующая программа на C++ печатает строго возрастающие адреса памяти? #…