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

Добавить в класс конструктор и реализовать наследование и инкапсуляцию

16.01.2018, 09:51. Показов 1312. Ответов 5

Студворк — интернет-сервис помощи студентам
Помогите правильно переделать пример класса, так чтобы там было наследование, поля с мейна, инкапсуляция, конструктор. Не понимаю все это, еще объясните, если можно, вопрос жизни и смерти!

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class D 
{ 
protected: 
std::string name; 
int age;  
void display() //тут должно быть что то другое, потому что это же в мейне, да? 
{ 
std::cout « "Name: " « name « "Age: " « age « std::endl; 
} 
}; 
class PD: public D
{ 
private:
std::string breed; 
void display()// опять должно быть что то другое
{ 
std::cout « "Name: " « name « "Age: " « age « std::endl; 
} 
};
Помогите пожалуйста!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.01.2018, 09:51
Ответы с готовыми решениями:

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

Добавить конструктор в класс
Просьба помочь, не совсем понимаю, что должно получиться Задание: Допишите конструктор в класс Time, который принимает время в...

Добавить конструктор в наследуемый класс
Добрый день, Я хочу добавить добавить конструктор в такой способ public class my_Dictionary<Tkey,Tvalue> :...

5
Заклинатель змей
 Аватар для DobroAlex
705 / 560 / 219
Регистрация: 30.04.2016
Сообщений: 2,605
16.01.2018, 10:36
хрома, вы читали литературу из шапки раздела? Тот же самый Шилдт неплохо описывает начинающим про конструкторы и наследование. Касательно вашего кода, всё правильно, show() -- метод класса
0
"C with Classes"
2022 / 1404 / 523
Регистрация: 16.08.2014
Сообщений: 5,885
Записей в блоге: 1
16.01.2018, 10:52
Лучший ответ Сообщение было отмечено хрома как решение

Решение

хрома, держи приятель, и не ленись книжки читать
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include <string>
#include <iostream>
 
class D 
{ 
protected: 
    std::string name; 
    int age; 
 
public:
    D(const std::string& name = "none", int age = -1)
    {
        SetName(name);
        SetAge(age);
    }
 
    std::string GetName() const { return name; }
    void SetName(const std::string& s) { name = s; }
 
    int GetAge() const { return age; }
    void SetAge(int i) { age = i; }
 
    void Display()
    { 
        std::cout << "Name: " << name << std::endl
                  << "Age: "  << age  << std::endl
                  << std::endl; 
    } 
};
 
class PD : public D
{ 
private:
    std::string breed;
 
public:
    PD(const std::string& name = "none", int age = -1,
        const std::string& breed = "none") : D(name, age)
    {
        SetBreed(breed);
    }
 
    std::string GetBreed() const { return breed; }
    void SetBreed(const std::string& s) { breed = s; }
 
    void Display()
    { 
        std::cout << "Name: "   << name  << std::endl
                  << "Age: "    << age   << std::endl
                  << "Breed: "  << breed << std::endl
                  << std::endl;
    } 
};
1
0 / 0 / 0
Регистрация: 05.04.2017
Сообщений: 7
16.01.2018, 15:47  [ТС]
Спасибо.
Это же все до mаin? Но разве можно использовать до main?
Цитата Сообщение от _stanislav Посмотреть сообщение
void Display()
0
16.01.2018, 15:47

Не по теме:

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

0
"C with Classes"
2022 / 1404 / 523
Регистрация: 16.08.2014
Сообщений: 5,885
Записей в блоге: 1
16.01.2018, 17:28
Лучший ответ Сообщение было отмечено хрома как решение

Решение

хрома, там же нет использования, только определение класса. использовать будешь в main, то есть создавать объекты и вызывать Display().

Добавлено через 12 минут
хрома, у каждой программы есть точка входа. в этой точке начинают выполнятся твои инструкции.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#include <string>
#include <iostream>
 
class D 
{ 
protected: 
    std::string name; 
    int age; 
 
public:
    D(const std::string& name = "none", int age = -1)
    {
        SetName(name);
        SetAge(age);
    }
 
    std::string GetName() const { return name; }
    void SetName(const std::string& s) { name = s; }
 
    int GetAge() const { return age; }
    void SetAge(int i) { age = i; }
 
    void Display()
    { 
        std::cout << "Name: " << name << std::endl
                  << "Age: "  << age  << std::endl
                  << std::endl; 
    } 
};
 
class PD: public D
{ 
private:
    std::string breed;
 
public:
    PD(const std::string& name = "none", int age = -1,
        const std::string& breed = "none") : D(name, age)
    {
        SetBreed(breed);
    }
 
    std::string GetBreed() const { return breed; }
    void SetBreed(const std::string& s) { breed = s; }
 
    void Display()
    { 
        std::cout << "Name: "   << name  << std::endl
                  << "Age: "    << age   << std::endl
                  << "Breed: "  << breed << std::endl
                  << std::endl;
    } 
};
 
int main(int argc, char* argv[] )    // Точка входа в программу
{
    // Создаем объекты
    D d1;
    D d2("1", 2);
 
    PD pd1;
    PD pd2("3", 4, "5");
 
    // Вызываем методы объектов
    d1.Display();
    d2.Display();
 
    pd1.Display();
    pd2.Display();
 
    return 0;
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.01.2018, 17:28
Помогаю со студенческими работами здесь

Добавить в класс конструктор и деструктор
Помогите пожалуйста добавить в класс конструктор и деструктор. Заранее спасибо ) #include &quot;stdafx.h&quot; #include...

Реализовать класс Vector (конструктор, интерфейс)
Добрый день. Нужна небольшая помощь (проверка) в редактировании (исправлении) кода. Задание - В файле исходного кода реализовать класс...

Добавить в класс хотя бы один конструктор и деструктор
Вот сама программа, заранее спасибо за помощь! #include &lt;iostream&gt; #include &lt;math.h&gt; #include &lt;conio.h&gt; using...

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

Реализовать класс. В нём предусмотреть конструктор для установки начальных значений полей
Поле left - вещественное число, левая граница диапазона. Поле right - вещественное число, правая граница диапазона. Пара этих числе...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
BOINC: 22 года — и всё ещё работает
Programma_Boinc 12.03.2026
BOINC: 22 года — и всё ещё работает Дэвид Андерсон написал ретроспективу. Кратко: в 2001 году он ушёл из United Devices, где был CTO, и за несколько месяцев написал ядро BOINC — клиент, сервер,. . .
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru