Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
10 / 10 / 6
Регистрация: 24.05.2013
Сообщений: 349
1

Вызов конструктора с аргументами

13.03.2016, 01:38. Просмотров 948. Ответов 3
Метки нет (Все метки)


есть класс приложения test_proj
в интерфейсе класса в файле test_proj.h создается объект класса Settings.
C++
1
2
3
4
5
6
7
class test_proj
{
//...
private:
    Settings MySettings;
//...
};
В классе Settings есть конструктор в который нужно передать несколько аргументов.
C++
1
2
3
4
5
6
7
class Settings
{
public:
    Settings(void);
    Settings(int arg, int arg2);
    ~Settings(void);
};
Как из реализации класса test_proj передать в конструктор объекта MySettings класса Settings два аргумента (1 и 2) если объект MySettings класса Settings объявлен в интерфейсе класса test_proj?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.03.2016, 01:38
Ответы с готовыми решениями:

Вызов конструктора с аргументами
Привет всем! Вопрос в том, что когда я его инициализирую (при этом указывая все аргументы которые...

Объявление, определение и вызов функции с заданными аргументами
Нужно написать программу, включающую в себя оглашение, определение и демонстрацию работы через...

вызов конструктора
Здарова! Есть допустим класс: class Str { Str(); Str(Str&); Str(char*); };

вызов конструктора
Почему при повторном вызове конструктора выбивает ошибку ?Вот здесь ObjX(INUSE); no match for...

3
50 / 51 / 34
Регистрация: 29.12.2012
Сообщений: 478
13.03.2016, 01:49 2
Классы это пользовательские типы.
Вопрос если у тебя в классе переменная типа int где ты его инициализируешь?
0
nd2
3406 / 2787 / 1251
Регистрация: 29.01.2016
Сообщений: 9,423
13.03.2016, 02:01 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
class test_proj
{
public:
    test_proj(int a, int b) : MySettings(a, b)
    {}
    
    //...
 
private:
    Settings MySettings;
//...
};
0
С чаем беда...
Эксперт CЭксперт С++
8497 / 4219 / 1169
Регистрация: 18.10.2014
Сообщений: 9,143
13.03.2016, 02:22 4
Лучший ответ Сообщение было отмечено drunkwolfs как решение

Решение

Цитата Сообщение от drunkwolfs Посмотреть сообщение
в интерфейсе класса в файле test_proj.h создается объект класса Settings.
Не совсем понятно, почему вы называете это "в интерфейсе класса".

Цитата Сообщение от drunkwolfs Посмотреть сообщение
Как из реализации класса test_proj передать в конструктор объекта MySettings класса Settings два аргумента (1 и 2)
Либо по старинке, в списке инициализации конструктора test_proj

C++
1
2
3
4
test_proj::test_proj() : MySettings(1, 2) // или MySettings{ 1, 2 }
{
  ...
}
Либо, если вас это устроит, прямо в объявлении члена класса

C++
1
2
3
4
5
6
7
class test_proj
{
//...
private:
    Settings MySettings{ 1, 2 };
//...
};
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.03.2016, 02:22

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Вызов конструктора
void main() { std::string stemporary; int itemporary; float ftemporary; float fftemporary;...

Вызов конструктора копий
Почему из строк 186-191 вызывается конструктор копий 83-91? #include "stdafx.h" #define DEBUG...

Неправильный вызов конструктора
Доброго времени суток. Возникла такая проблема. Есть такой конструктор House(string s){ int...

Повторный вызов конструктора?!
Мой небольшой класс class CString { private: char* str; int len; int real_size; public:...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.