Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 05.08.2013
Сообщений: 39

Как вставить в конструктор А класс В

13.03.2015, 10:14. Показов 826. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
здравствуйте!
помогите,знаний не хватает.делаю упражнение по дейтелам.
суть-в класс Employee,содержащий фамилию string и зарплату int, включить эл-т данных birthdate класса Date, в котором месяц int, день int и год int.
пишу
Employee employee("Smith",500,12,31,2015)
ошибка-не видит подходящей функции.
как же конструировать Employee?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.03.2015, 10:14
Ответы с готовыми решениями:

Не могу сделать чтобы класс содержал основной конструктор и конструктор копирования
Разработать класс ThreeAngle для работы с плоскими треугольниками. В качестве членов-данных задаются длины трех сторон треугольника. Класс...

Создать класс. Написать конструктор по умолчанию, конструктор с параметрами. Перегрузить операции «меньше» и «равно»
Помогите пожалуйста, хоть с одним из заданий. 1. Создать класс. Написать конструктор по умолчанию, конструктор с параметрами....

Как создать класс не вызывая конструктор
Всем привет, кто знает как создать новый экземпляр класса не вызывая конструктор?

16
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
13.03.2015, 10:49
C++
1
2
3
4
5
6
struct Employee
{
    Employee(const std::string&_a,int _b,int _c,int _d,int _e):a(_a),b(_b),c(_c),d(_d),e(_e){}
    std::string a;
    int a,b,c,d,e;
};
0
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,536
Записей в блоге: 1
13.03.2015, 11:08
C++
1
2
3
4
5
6
7
struct Employee
{
    Employee(const std::string&_a,int _b,int _c,int _d,int _e):a(_a),b(_b),birthdate(_c,_d,_e){}
    std::string a;
    int a,b;
    Date  birthdate;
};
0
0 / 0 / 0
Регистрация: 05.08.2013
Сообщений: 39
13.03.2015, 11:40  [ТС]
а чем отличается структура от класса?
еще вопрос-если от Employee есть производные классы,в каждом надо переделываить конструктор?
0
19 / 19 / 14
Регистрация: 25.02.2015
Сообщений: 138
13.03.2015, 11:45
KPOHOC_007, почти ничем не отличаются. В c++ это почти одно и тоже. У классов по умолчанию доступ стоит private, у структур - public.

При наследовании нужно писать свой конструктор.
0
76 / 76 / 32
Регистрация: 14.04.2014
Сообщений: 408
13.03.2015, 12:06
Цитата Сообщение от Mistik Посмотреть сообщение
почти ничем не отличаются
сколько перечитал холиваров на эту тему.
Но если на пальцах обьяснять, то так и есть.
0
19 / 19 / 14
Регистрация: 25.02.2015
Сообщений: 138
13.03.2015, 12:14
Fallenworld, как говорит Страуструп: "Если Вам скрывать нечего - используйте struct. Нужна хорошая инкапсуляция - используйте ключевое слово class.
0
13.03.2015, 12:18

Не по теме:

Mistik, я не против совершенно, просто уточнил, что там не совсем небольшое различие, если не используется многоуровневое наследование, особенно от всяких абстрактных товарищей.

0
13.03.2015, 12:49

Не по теме:

Цитата Сообщение от Fallenworld Посмотреть сообщение
сколько перечитал холиваров на эту тему.
Холивары на подобные темы выдают незнание. Если такие простые темы вызывают холивары, то однозначно все, кто в них участвуют, некомпетентны в вопросе. Значит, читать такое скорее вредно, чем полезно.

0
0 / 0 / 0
Регистрация: 05.08.2013
Сообщений: 39
13.03.2015, 13:37  [ТС]
спасибо за помощь!
0
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
13.03.2015, 13:53
Цитата Сообщение от Mistik Посмотреть сообщение
При наследовании нужно писать свой конструктор.
Или использовать using из С++11
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
 
struct A
{
    A(const int newX) : x(newX) {}
    virtual ~A() = default;
    int x;
};
 
struct B : A
{
    using A::A;
};
 
int main()
{
    B b(2);
    std::cout << b.x;
}
0
19 / 19 / 14
Регистрация: 25.02.2015
Сообщений: 138
13.03.2015, 14:51
MrGluck,

Не по теме:

не знал. И мне будет новой инфой. А что значит = default?

0
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
13.03.2015, 15:02
Цитата Сообщение от Mistik Посмотреть сообщение
А что значит = default?
Ключевое слово в С++11. Использовать тело дефолтного (сгенеренного компилятором автоматически). В данном случае нужно т.к. по умолчанию компиль генерит невиртуальный деструктор, а структура предполагает наследование.
http://en.cppreference.com/w/c... _functions
0
19 / 19 / 14
Регистрация: 25.02.2015
Сообщений: 138
13.03.2015, 15:07
MrGluck, то есть при использовании using, следует использовать default в случае виртуальность ф-ции?
0
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
13.03.2015, 15:36
Цитата Сообщение от Mistik Посмотреть сообщение
MrGluck, то есть при использовании using, следует использовать default в случае виртуальность ф-ции?
Нет, это не связанные вещи. Виртуальный деструктор нужен для класса если он собирается иметь потомков. using в данном контексте просто позволяет использовать конструктор базового класса, а не писать свой.
0
19 / 19 / 14
Регистрация: 25.02.2015
Сообщений: 138
13.03.2015, 16:02
Это я знал, но имел ввиду другое . Спасибо
0
0 / 0 / 0
Регистрация: 05.08.2013
Сообщений: 39
13.03.2015, 16:52  [ТС]
у меня еще вопрос.есть 2 задачи
1-создать вектор ссылок на Employee для хранения различных объектов произвольных классов
2-создать вектор указателей Employee на объекты каждого из конкретных классов иерархии.
это случаем не одно и то же?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.03.2015, 16:52
Помогаю со студенческими работами здесь

подскажите пожалуйста как запихнуть в класс конструктор
по лабораторной задание: создать программу которая решает заданный интеграл методом трапеций...тра-ля-ля...создавать с учетом...

Класс и конструктор с string или как использовать указатели.
Есть такая вот ерунда class human { public: string name; string surname; int age; human(string *imya, string *familia,...

Создать класс "Вектор" и реализовать конструктор по умолчанию, конструктор копирования и деструктор
Всем доброго времени суток! нужна ваша помощь! нужно создать класс вектор и реализовать конструктор по умолчанию, копирования и...

Как вставить структуру в класс?
К как вставить структуру в класс чтобы например: использовать в функциях и так dd.chisl и так далее. struct Clkr { double chisl; ...

Как вставить в класс символов '-', '+' и '()'?
не могу сообразить сейчас проходят только цифры, как сделать чтобы еще проходил &quot;+&quot; &quot;-&quot; и &quot;()&quot; if...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru