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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
PlayerDark
0 / 0 / 0
Регистрация: 02.12.2009
Сообщений: 62
#1

Include gurad - C++

26.06.2010, 18:10. Просмотров 411. Ответов 3
Метки нет (Все метки)

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

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
//hd1.h
#ifndef hd1
#define hd1
 
#include "hd2.h"
 
class hd1 {
public:
    hd2 getHd2() {
        return hd2();
    };
};
 
#endif
 
//hd2.h
#ifndef hd2
#define hd2
 
class hd2 {
public:
    int member;
};
 
#endif
 
//main.cpp
//#include "hd2.h"
#include "hd1.h"
int main() {
    hd1 hd;
    hd.getHd2();
    return 0;
};
это не работает. Сижу под Visual C++ Express 2008
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.06.2010, 18:10     Include gurad
Посмотрите здесь:

Работа с файлами в C# с исп. библиотек #include <stdio.h> #include <stdlib.h> #include <math.h> #include <io.h> - C++
В типизированном файле записаны названия городов и их численность. Увеличить численность каждого города на 5% (Количество жителей всегда...

ошибка в лабе не находит #include<iomanip.h> #include<conio.h> - C++
Само задание: Услуги телефонной сети оплачиваются по следующему правилу: за разговоры до A минут в месяц-C руб. а разговоры сверх...

Include - C++
Вот давно хотел разобраться. Вот допустим есть у меня 6 файлов A.h A.cpp ,B.h B.cpp ,C.h C.cpp , в каждом h файле описан класс , а в cpp...

ошибка с include - C++
вобщем, проблема в следующем: при компиляции выдает ошибки Unable to open include file iostream и vector, с std тоже ошибка в объявлении.....

#include <vcl.h> - C++
Скажите пожалуйста, что это за билдеровская приблуда?

Инклюиды - include - C++
Доброго времени суток ! столкнулся с такой проблемой что нахожу какие-то примеры программ в инэте запускаю у себя а оно ругается что нет...

Проблема с #include - C++
Проект состоит из нескольких классов, каждый из которых реализован в своём модуле. Есть Главный класс и Дочерний класс, экземпляр...

#include<iomanip> - C++
Что за библиотека iomanip ? Что она делает ?

Деректива include - C++
можно ли как-то просмотреть содержимое подключаемой дерективы ? К примеру компилятор у меня Devcpp

проверка #include - C++
насколько я знаю в visual studio есть функция проверки всех #includes на наличие включаемых файлов. где она?


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nick Alte
Эксперт С++
1608 / 1000 / 118
Регистрация: 27.09.2009
Сообщений: 1,927
Завершенные тесты: 1
26.06.2010, 19:05     Include gurad #2
Должно работать, что тут скажешь... Конечно, надо было привести текст ошибки и всё такое...
PlayerDark
0 / 0 / 0
Регистрация: 02.12.2009
Сообщений: 62
26.06.2010, 19:10  [ТС]     Include gurad #3
1>c:\documents and settings\admin.microsof-fcc3b0\мои документы\visual studio 2008\projects\brainzout\brainzout\hd2.h(8) : warning C4094: untagged 'class' declared no symbols
1>c:\documents and settings\admin.microsof-fcc3b0\мои документы\visual studio 2008\projects\brainzout\brainzout\hd1.h(9) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\documents and settings\admin.microsof-fcc3b0\мои документы\visual studio 2008\projects\brainzout\brainzout\hd1.h(11) : warning C4183: 'getHd2': missing return type; assumed to be a member function returning 'int'
1>c:\documents and settings\admin.microsof-fcc3b0\мои документы\visual studio 2008\projects\brainzout\brainzout\hd1.h(12) : warning C4094: untagged 'class' declared no symbols
1>c:\documents and settings\admin.microsof-fcc3b0\мои документы\visual studio 2008\projects\brainzout\brainzout\hd1.h(10) : error C2059: syntax error : ')'
1>c:\documents and settings\admin.microsof-fcc3b0\мои документы\visual studio 2008\projects\brainzout\brainzout\main.cpp(4) : error C2065: 'hd' : undeclared identifier
1>c:\documents and settings\admin.microsof-fcc3b0\мои документы\visual studio 2008\projects\brainzout\brainzout\main.cpp(5) : error C2065: 'hd' : undeclared identifier
1>c:\documents and settings\admin.microsof-fcc3b0\мои документы\visual studio 2008\projects\brainzout\brainzout\main.cpp(5) : error C2228: left of '.getHd2' must have class/struct/union
1> type is ''unknown-type''
Nick Alte
Эксперт С++
1608 / 1000 / 118
Регистрация: 27.09.2009
Сообщений: 1,927
Завершенные тесты: 1
26.06.2010, 19:41     Include gurad #4
Ну вот теперь другое дело. У тебя имена include guard'ов совпадают с именами класса. То есть, эти имена в тексте после обработки препроцессором просто-напросто исчезают. Называй гарды как-нибудь вроде HD2_H или HD2_HEADER.
Yandex
Объявления
26.06.2010, 19:41     Include gurad
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru