Вопросы по теме 'default-constructor'

Компилятор жалуется на BOOST_CHECK_THROW в конструкторе
Не компилируется следующее: class Foo { public: Foo( boost::shared_ptr< Bar > arg ); }; // in test-case boost::shared_ptr< Bar > bar; BOOST_CHECK_THROW( Foo( bar ), std::logic_error ); // compiler error here Реализация Bar...
2053 просмотров

Инициализирует ли конструктор по умолчанию встроенные типы?
Инициализирует ли конструктор по умолчанию (созданный компилятором) встроенные типы?
85930 просмотров

Мне действительно нужно определить конструктор по умолчанию в java?
Он отлично работает, когда конструкторы не определены, но выдает ошибки, если я определяю параметризованный конструктор, а не конструктор по умолчанию и не передаю никаких значений при создании объекта . Я думал, что конструкторы предопределены....
45637 просмотров
schedule 01.03.2023

2 разных типа вызова конструктора из конструктора копирования
Рассмотрим пример кода ниже: #include <iostream> using namespace std; class core { public: core(const core& obj) { cout << "core copy ctor called\n"; } core() { cout <<...
734 просмотров

Жалобы компилятора на то, что объект const не инициализирован
Возможный дубликат: неинициализированная константа Я понимаю, что объект const должен быть инициализирован. Итак, для следующего кода class sample {}; int main() { const sample obj; return 0; } компилятор будет...
1008 просмотров

Конструктор C ++ по умолчанию: строковые параметры vs строковые параметры ()
Возможный дубликат: Не являются ли круглые скобки в конструкторе без аргументов языковым стандартом? Может ли кто-нибудь объяснить, почему эта строка не дает мне ошибки: string params; params+="d"; но эти строки: string...
372 просмотров
schedule 07.04.2023

Каковы преимущества класса Object с открытым конструктором без параметров?
Некоторое время я пытался определить, почему класс Object имеет общедоступный конструктор без параметров или, действительно, почему он не помечен abstract . Я не вижу разумного обстоятельства, при котором было бы необходимо (явно) вызывать...
105 просмотров

Мой конструктор указывает по крайней мере одно значение для построения, и все же он может быть создан по умолчанию
Возьмите следующий класс: class Foo{ public: Foo(std::string bar_, int baz_ = 7) :bar(bar_) ,baz(baz_) {} private: std::string bar; int baz; }; Поскольку Foo(std::string bar_, int baz_ = 7); — мой единственный...
113 просмотров

Ошибка конструктора значений по умолчанию: «foo» не является прямым основанием для «foo»
Я пытался настроить конструкторы по умолчанию, но продолжаю сталкиваться с ошибкой: newton.h:29:38: error: type ‘Newton’ is not a direct base of ‘Newton’ Я не понимаю, что делаю неправильно, я использую g ++ с std = c ++ 0x (настройка...
266 просмотров

какова роль конструктора при создании объекта в java
класс имя_класса = новый класс(); именно так мы определяем и создаем экземпляры объектов в java. Мой вопрос: Какую роль здесь играет конструктор 'class ()' здесь, в этом утверждении.
2492 просмотров
schedule 09.03.2023

Дескрипторы ресурсов - запрещающие конструкторы по умолчанию?
Итак, я занимался разработкой библиотеки и столкнулся с дилеммой. Библиотека является частной, поэтому я не могу ею поделиться, но я чувствую, что это может быть значимый вопрос. Дилемма возникла из-за того, почему в библиотеке нет конструктора по...
356 просмотров
schedule 24.10.2022

Написание конструктора по умолчанию вызывает нулевую инициализацию?
Это мои определения классов: class Foo{ int _ent; public: void printEnt() const{cout << _ent << ' ';} }; class Bar{ Foo _foo; public: void printEnt() const{_foo.printEnt();} }; И это мой тестовый код: char*...
1162 просмотров

Частный конструктор C++ по умолчанию с пустым телом
Я видел код здесь . Существует класс с закрытым конструктором по умолчанию с пустым телом и параметризованным конструктором. В комментариях к коду говорится, что конструктор по умолчанию был сделан закрытым, чтобы не можно было создавать объекты...
1031 просмотров
schedule 01.05.2022

Как убедиться, что ваш объект инициализирован нулем?
Обновление : я ищу способ инициализировать весь класс сразу нулями, потому что технически можно забыть добавить ' = 0 ' или ' {} ' после каждого члена. В одном из комментариев упоминается, что явно заданный по умолчанию c-tor без аргументов...
221 просмотров

Является ли конструктор по умолчанию потокобезопасным в С++?
class log_String { //These are private! std::vector<std::string> list; std::mutex m; log_String& operator=(const log_String &source); //Operatore assegnazione log_String(const log_String &source); public: log_String()...
315 просмотров
schedule 02.03.2023

Конструкторы классов, перегруженные конструкторы и инициализация объектов
Из руководства по C++ , глава Классы (I), Перегрузка конструкторов: Но в этом примере также представлен конструктор особого вида: конструктор по умолчанию. Конструктор по умолчанию — это конструктор, не принимающий параметров, и он особенный,...
565 просмотров

Ни конструктор по умолчанию, ни конструктор копирования не вызываются при использовании анонимного объекта
Ниже приведен фрагмент, предназначенный для тестирования конструкторов. Он был запущен в VS 2015. На мой взгляд, "B b(B())" имеет ту же функцию, что и "B b = B()", однако мой код говорит, что они ведут себя по-разному. Я знаю, что при...
194 просмотров

Почему типы закрытия/лямбда-выражения не имеют конструктора по умолчанию в C++
По какой причине у лямбда-выражений нет конструктора по умолчанию? Есть ли за этим какая-то техническая причина, или это чисто дизайнерское решение?
601 просмотров

Инициализация двойной скобки
Какой конструктор следует вызывать в следующем коде и почему? struct S { int i; S() = default; S(void *) : i{1} { ; } }; S s{{}}; Если я использую clang (из транка), то вызывается второй. Если второй конструктор...
1024 просмотров

= видимость конструктора по умолчанию
у меня такой код class A { A() = default; }; class B { B(); }; B::B() = default; int main() { A a{}; //1 A a1; //2 B b{}; //3 B b1; //4 } Строки 2, 3, 4 генерируют ошибку компиляции, как и ожидалось. Но линия 1...
60 просмотров
schedule 25.12.2022