Форум программистов, компьютерный форум CyberForum.ru

Иерархия классов в многофайловом проекте - C++

Восстановить пароль Регистрация
 
o33ik
138 / 5 / 1
Регистрация: 25.03.2013
Сообщений: 228
21.11.2013, 21:20     Иерархия классов в многофайловом проекте #1
Всем привет. Есть проблема с созданием программы. Должна быть небольшая иерархия классов, и все классы должны быть описаны в паре .h и .cpp файликов. Сделал иерархию, порозкидал все по файликах. В main подключил все .h файлики. При попытке скомпилировать выдает пару ошибок типа: "переопределение типа class", "не определен базовый класс".
Вот сам проект.
Вложения
Тип файла: 7z prosto_kursova.7z (1.48 Мб, 6 просмотров)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2013, 21:20     Иерархия классов в многофайловом проекте
Посмотрите здесь:

Иерархия классов .... C++
Иерархия классов C++
C++ Определение метода вне класса, как inline в многофайловом проекте
C++ Вывод в файл *.txt в многофайловом проекте
Иерархия классов C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrCold
851 / 749 / 71
Регистрация: 11.01.2012
Сообщений: 1,942
21.11.2013, 21:37     Иерархия классов в многофайловом проекте #2
Цитата Сообщение от o33ik Посмотреть сообщение
В main подключил все .h файлики.
директивы #include guards нужны

C++
1
2
3
4
5
6
7
8
9
10
#ifndef CAR_H
 #define CAR_H
#include "Vehicle.h";
 
class Cars: public Vehicle
{
protected: 
    std::string WD_type;
};
#endif
Добавлено через 44 секунды
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
#ifndef VEHICLE_H
 #define VEHICLE_H
 
#include <string>;
#include <iostream>;
#include <iomanip>;
class Vehicle
{
protected:
    std::string brand;
    std::string model;
    std::string engine_type;
    float engine_volume;
    int cylinders_number;
    std::string fuel_type;
    std::string cylinders_configuration;
    std::string transmission_type;
    std::string color;
    int full_weight;
    int weight;
    int gears;
public:
    virtual void input() =0;
    virtual void edit() = 0;
    virtual void output() = 0;
};
#endif
Добавлено через 22 секунды
Скомпилировалось
o33ik
138 / 5 / 1
Регистрация: 25.03.2013
Сообщений: 228
21.11.2013, 21:49  [ТС]     Иерархия классов в многофайловом проекте #3
MrCold, теперь работает. спасибо
o33ik
138 / 5 / 1
Регистрация: 25.03.2013
Сообщений: 228
21.11.2013, 21:57  [ТС]     Иерархия классов в многофайловом проекте #4
так, а как теперь создавать объекты етих класов? У меня такие ошибки:
Миниатюры
Иерархия классов в многофайловом проекте  
MrCold
851 / 749 / 71
Регистрация: 11.01.2012
Сообщений: 1,942
21.11.2013, 22:14     Иерархия классов в многофайловом проекте #5
o33ik, Некоторые методы просмотрите. У вас объявления методов в заголовочных файлах есть
а в .СРР определений методов нет
Moto.H
C++
1
2
3
4
5
6
7
8
9
#include "Vehicle.h";
 
class Moto:public Vehicle
{
public:
    void input();
    void edit(); <--  есть 
    void output();
};
А в Мото.СРР описания void Мото::edit() нет
ну и тд
Yandex
Объявления
21.11.2013, 22:14     Иерархия классов в многофайловом проекте
Ответ Создать тему
Опции темы

Текущее время: 16:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru