Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

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

Include gurad - C++

26.06.2010, 18:10. Просмотров 433. Ответов 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
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.06.2010, 18:10
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Include gurad (C++):

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

#include<iostream>// подключение библиотек #include <conio.h> #include <climits> - C++
помогите для этой программы сделать блок-схему. Пожалуйста #include&lt;iostream&gt;// подключение библиотек #include &lt;conio.h&gt; #include...

Чем отличается #include <cstring>, #include <string> и #include <string.h>? - C++
Доброго времени суток :) Пишу свой класс и мне для нужны функции для работы со строками. Когда подключаю #include &lt;string&gt; все что мне...

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

Какая разница между #include<> и #include""? - C++
Позволите спросить несколько вопросов: 1)Какая разница между #include&lt;&gt; и #include&quot;&quot; 2)Если нужно значение объекта и я не собираюсь его...

#include в C++ - C++
Здраствуйте, скажите пожалуйсто какие #include являются основными, я открыл папку include у себя в компелятори, там кучи файлов, все...

3
Nick Alte
Эксперт С++
1646 / 1018 / 120
Регистрация: 27.09.2009
Сообщений: 1,945
Завершенные тесты: 1
26.06.2010, 19:05 #2
Должно работать, что тут скажешь... Конечно, надо было привести текст ошибки и всё такое...
0
PlayerDark
0 / 0 / 0
Регистрация: 02.12.2009
Сообщений: 62
26.06.2010, 19:10  [ТС] #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''
0
Nick Alte
Эксперт С++
1646 / 1018 / 120
Регистрация: 27.09.2009
Сообщений: 1,945
Завершенные тесты: 1
26.06.2010, 19:41 #4
Ну вот теперь другое дело. У тебя имена include guard'ов совпадают с именами класса. То есть, эти имена в тексте после обработки препроцессором просто-напросто исчезают. Называй гарды как-нибудь вроде HD2_H или HD2_HEADER.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.06.2010, 19:41
Привет! Вот еще темы с ответами:

#include в С++ - C++
#include &lt;string&gt; Что же это обозначает?

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

INCLUDE - C++
Подскажите что обозначаеть include . #include &lt;stdio.h&gt; #include &lt;string.h&gt; #include &lt;stdlib.h&gt; #include &lt;crypt.h&gt; #include...

#include - C++
не понимаю какие &lt;stdio.h&gt;,&lt;time.h&gt; и т.д использовать. пыталась найти их характеристики в интернете, но толкового ответа не нашла,...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

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