Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
 Аватар для LastPast
32 / 32 / 2
Регистрация: 06.07.2010
Сообщений: 129

Вопрос про конструктор

01.07.2011, 21:07. Показов 603. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Обязательно ли делать конструктор по умолчанию для класса, экземпляр которого входит в другой класс?

Например так:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Class2
{
public:
    // тут из конструкторов есть только такой
    Class2(bool b2);
    // стандартный Class2() нужно как-то запретить
}
 
class Class1
{
public:
    Class2 obj2;
    // компилятор говорит, что
    // "не могу найти стандартный конструктор"
    // как тут вызвать не стандартный, а некий другой?
    // возможно ли такое?
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.07.2011, 21:07
Ответы с готовыми решениями:

Вопрос про конструктор
цитата исходного кода из книги: class stock{ ... public: stock(); //Типа объявление конструктора по умолчанию чтоли... ...

Вопрос про конструктор и инициализвцию
class test { int a; char name; string name2; public: test(int a,char* name, ....) : a(a), .....{} }; если стринг как...

Вопрос про конструктор класса по умолчанию
http://s2.ipicture.ru/uploads/20111029/A7AtbNYV.jpg Пункт первый не могу немного понять.Т.е получается,что всегда лучше создавать самому...

3
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
01.07.2011, 21:20
Через список инициализации:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class Class2
{
public:        
        Class2(bool b2);        
};
 
class Class1
{
public:
        Class2 obj2;
        Class1()
            : obj2(значение)
        {
        }
};
1
 Аватар для OstapBender
594 / 532 / 76
Регистрация: 22.03.2011
Сообщений: 1,585
01.07.2011, 21:20
ну передать аргументы ему
C++
1
2
3
4
5
6
7
class Class1
{
        Class2 obj2;
public:
    Class1():obj2(true) {}
 
};
1
 Аватар для LastPast
32 / 32 / 2
Регистрация: 06.07.2010
Сообщений: 129
01.07.2011, 23:22  [ТС]
Вау! Спасибо. Обожаю списки инициализации!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.07.2011, 23:22
Помогаю со студенческими работами здесь

Конструктор копирования(быстрый вопрос)
Вроде бы все просто и логично, но в итоге выполнения B не копируется в A :C why? #include <iostream> using namespace std; ...

Про конструктор копирования, оператор присваивания
Объясните, пожалуйста, принцип действия конструктора копирования и операции присваивания. На что указывает указатель this в этих функциях?...

Инициализация массива через конструктор. Вопрос.
Всем привет. Есть скудная вытяжка из методички: "Массив объектов В случае, когда возникает необходимость иметь несколько объектов...

моя первая плата, хедеры - вопрос про eagle или про пайку
До сих пор я паял платы на однослойных платах для прототипирования - примерно вот таких http://www.ebay.som/itm/221207693405 Один из...

Вопрос про обратную связь, и про схемотехнику полумоста
Добрый день) Я сейчас делаю схему от уважаемого rost c форума http://www.psb-kots.ru/forum/ , и мне непонятны некоторые моменты, а тот...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 19.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru