Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
383 / 280 / 112
Регистрация: 28.04.2015
Сообщений: 1,726

Разнести код на файлы .h + .cpp (наследование)

15.01.2021, 03:23. Показов 962. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет!

Есть такой код (условный простейший пример, проще не смогу придумать):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class A
{
public:
    A(const int pr)
    {}
};
 
class B: public A
{
public:
    B(const double pr) : A(pr)
    {}
};
 
void main(void)
{
    return;
}
моя задача эту прожку разбить на 5 файлов: 2 файла с декларацией классов (.h), 2 файла реализации классов (.cpp) и тестирующий модуль (.cpp).

ок, вот заголовочный файлы:
C++
1
2
3
4
5
6
7
8
#ifndef CLASS_A
#define CLASS_A
class A
{
public:
    A(const int pr);
};
#endif
C++
1
2
3
4
5
6
7
8
9
10
#include "A.h"
 
#ifndef CLASS_B
#define CLASS_B
class B: public A
{
public:
    B(const double pr) : A(pr);
};
#endif
вот файлы реализации:
C++
1
2
3
#include "A.h"
A::A(const int pr)
{}
C++
1
2
3
4
5
#include "B.h"
#include "A.h"
 
    B::B(const double pr) : A(pr)
    {}
и в итоге студия дает целых 14 ошибок!! жесть...
особенно компилеру не нравится эта строка:
C++
1
B::B(const double pr) : A(pr)
какой тут нужен синтаксис???
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.01.2021, 03:23
Ответы с готовыми решениями:

Можно ли вообще в проект CLI подключить файлы cpp на которых основной код и в FORM наследовать данные от туда
об этом вопросе я спрашивала иначе вот здесь https://www.cyberforum.ru/cpp-cli-winforms/thread2028039.html

Разнести .git .gitignore и файлы в разные папки
Гуру, подскажите, такое возможно??? Цель: папка где куча файлов, 2 из которых надо "мониторить". папка на другом диске...

Разнести файлы по папкам, заполняя их до заданного размера
Приветствую! сутки рылся в поиске и не нашел решения. В папке с:\123 лежат файлы разного расширения и разного веса, необходимо в этом...

1
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
13184 / 6820 / 1821
Регистрация: 18.10.2014
Сообщений: 17,263
15.01.2021, 03:32
Цитата Сообщение от FasterHarder Посмотреть сообщение
и в итоге студия дает целых 14 ошибок!! жесть...
И где же в вашем вопросе процитированы эти ошибки? Покажите пальцем.

Цитата Сообщение от FasterHarder Посмотреть сообщение
особенно компилеру не нравится эта строка:
Не надо выдумывать. Вы не в состоянии даже внимательно посмотреть, какая именно строка вызывает ошибку??? Компилятору не нравится вот эта строка

C++
1
    B(const double pr) : A(pr);
Список инициализации конструктора должен располагаться в определении конструктора. Что тут делает это A(pr)?

Цитата Сообщение от FasterHarder Посмотреть сообщение
вот заголовочный файлы:
Можно также обратить внимание на некоторые стилистические бессмысленности:

1. Выносить #include за пределы include guards не нужно.
2. Зачем включать A.h в B.cpp, если и так ясно, что он будет включен через B.h?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.01.2021, 03:32
Помогаю со студенческими работами здесь

Наследование *.h из *.cpp
Здравствуйте. Столкнулся с проблемкой (VS2013, на ++ не писал 2 года) Создал WinForm приложение следующим образом: Пустой проект...

Код из Main разнести по методам
static void Main(string args) { int n, m; double max; Console.WriteLine("\n введите...

Разнести весь код из main по отдельным функциям
Нужно что-бы все вычисления проводились через функции. Как мне перенести вычисления, a1,a2,a3,b1... и так далее, из мэйна в отдельную...

Как разнести исходной код по разным файлам
Допустим у меня есть java файл активити - очень большой много классов, функций. Как этот код разнести по разным файлам, хотя бы классы,...

Заголовочные файлы и файлы cpp
Со временем сложилось представление что при написании программ стоит разделять МЕТА данные и данные, но для лучшего понимания своих...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru