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

Опять про реализацию класса в отдельном файле - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Размер вектора и вывод элементов http://www.cyberforum.ru/cpp-beginners/thread633285.html
Объясните почему в функции print размер передаваемого вектора v.size()=0? Соответсвенно не работает цикл for в print(). #include <iostream> #include <vector> using namespace std; void print(vector<int> v, string s) { cout << s << '\n'; cout << v.size() << '\n';
C++ Деление числа на разряды Дан массив из n натуральных четырёхзначных чисел. Вывести на экран только те, у которых сумма первых двух цифр равна сумме двух последних. Собственно сам вопрос, как разделить четырёхзначное число на тысячи, сотни, десятки и единицы? Пытался брать остаток от деление, например: 1734 % 10, но так получится отделить только единицы, а мне надо что бы число разложилось на 1, 7, 3 и 4. http://www.cyberforum.ru/cpp-beginners/thread633272.html
C++ Перегрузка операции инкремента
Как известно, постинкремент возвращает r-value, а преинкремент - l-value. То есть: ++(++x); // допустимо (x++)++; // ошибка компиляции Как грамотно реализовать это для своего класса? Допустим перегружаю постинкремент так: SimpleClass operator ++(int) { SimpleClass temp(*this);
C++ Наследование. Виртуальные функции
Всем привет. Недавно изучил раздел , который в названии. Вы могли бы дать задачку по выше указанной теме над которой надо хорошо подумать?
C++ Проблемма с вложенными классами http://www.cyberforum.ru/cpp-beginners/thread633215.html
Собственно, код программы. Компилятору не нравятся строки №41 и 47. Можете подсказать, в чем может быть причина? Компилятор gcc 4.5 //Задание 6.cpp //База данных сотрудников #include <iostream> using namespace std; ///////////////////
C++ Вектор типа Класс Как правильно работать с вектором тип которого класс, как правильно вносить и считывать данные вектора? #include <iostream> #include <vector> using namespace std; class Name { public: string name; подробнее

Показать сообщение отдельно
Irka-Kefirka
0 / 0 / 0
Регистрация: 05.08.2012
Сообщений: 4

Опять про реализацию класса в отдельном файле - C++

05.08.2012, 16:07. Просмотров 1057. Ответов 6
Метки (Все метки)

Допустимо ли следующее?

есть проект в Visual Studio 2010.
в нем следующие файлы:

main.cpp - собссно программа
MyClass.h - интерфейс класса MyClass
MyClass.cpp - реализация класса MyClass
MySubClass.h - интерфейс класса MySubClass (производного от MyClass)
MySubClass.cpp - реализация класса MySubClass

Содержимое файлов:
main.cpp

--------------------------
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
#include "MyClass.h"
#include "MySubClass.h"
...
blablabla
...
int main()
{
...
blablabla
...
}
---------------------------

MyClass.h

--------------------------
C++
1
2
3
4
5
6
7
8
9
10
11
12
#ifndef MYCLASS_H
#define MYCLASS_H
 
class MyClass
{
public:
...
protected
...
};
 
#endif
---------------------------

MyClass.cpp

---------------------------
C++
1
2
3
4
5
6
7
8
9
#ifndef MYCLASS_CPP
#define MYCLASS_CPP
 
#include "MyClass.h"
....
blablabla
...
 
#endif
--------------------------

MySubClass.h

--------------------------
C++
1
2
3
4
5
6
7
8
9
10
11
12
#ifndef MYSUBCLASS_H
#define MYSUBCLASS_H
 
class MySubClass: public MyClass
{
public:
...
private
...
};
 
#endif
---------------------------

MySubClass.cpp

---------------------------
C++
1
2
3
4
5
6
7
8
9
#ifndef MYSUBCLASS_CPP
#define MYSUBCLASS_CPP
 
#include "MySubClass.h"
....
blablabla
...
 
#endif
--------------------------


В данном случае, ничего не работает. При компиляции сообщает, что не определен базовый класс MyClass.
Хотя, если поместить реализацию MySubClass в файл MySubClass.h (реализацию тока MySubClass, реализацию
MyClass же оставить в файле MyClass.cpp без всяких изменений), то все работает. Почему реализация
MyClass в отдельном файле работает нормально, а MySubClass нет?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 16:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru