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

С++ .h файли - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ WINAPI, данные и с++ http://www.cyberforum.ru/cpp-beginners/thread513980.html
Здравствуйте. Прочитал книгу Дейтлов по с++ и книгу Шилдт'a, теперь пытаюсь выучить WINAPI, скачал кучи книг но не могу разобраться, толи я что-то пропустил, толи не то читаю, но нигде не...
C++ Поиск сроки в файле (STL) Всем привет!! помогите пожалуйста с консольной программой! Существует файл допустим в директории c:/, в котором в одном месте встречается директива (допустим #123#) необходимо осуществить поиск... http://www.cyberforum.ru/cpp-beginners/thread513936.html
ветвление взависимости от переменной C++
часть кода: cout << "Еще раз? ( yes / no ) " << endl << "для выхода наберите - \"ex\" " << endl; cin >> ans2; if (strcmp(ans2, "yes") == 0){ chec_ot(); i=i+1; } else if (strcmp(ans2, "no")...
C++ Знак !
Я часто встречаю вот такого типа выражения в программах на С++:if( !chislo ) { ... } что означает !chislo ведь переменная это не функция и она не может вернуть значение true или...
C++ Транспортная задача http://www.cyberforum.ru/cpp-beginners/thread513896.html
Всем добрый день! Второй месяц не могу справиться, помогите пожалуйста. Очень нужна программа к этой задаче! Заранее спасибо!...
C++ SNMP запрос полной информации об объекте Доброго времени суток уважаемые форумчане! Возник вопрос по работе с протоколом SNMP. После многочасового гугления мне наконец таки удалось достать адрес своей машины=) Но вопрос в другом.... подробнее

Показать сообщение отдельно
dimcoder
Полярный
466 / 439 / 68
Регистрация: 11.09.2011
Сообщений: 1,137
07.03.2012, 15:28
Цитата Сообщение от Evg Посмотреть сообщение
dimcoder, если взять твой способ, то, на твой взгляд, зачем в твоём примере нужны конструкции типа "#ifndef NAME_H"?
Ну скажем, создам я заголовочный файл name.h, а в нем напишу
C++
1
2
3
4
int func(int x)
{
   return x*10;
}
И напишу в программе:
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <cstdlib>
#include <iostream>
#include <name.h>
#include <name.h>
using namespace std;
 
int main(int argc, char *argv[])
{
    cout << func(10) << endl;
    system("PAUSE");
    return EXIT_SUCCESS;
}
Ошибка: redefinition of int func(int)
А если напишу в заголовочном файле так:
C++
1
2
3
4
5
6
7
#ifndef NAME_H
#define NAME_H
int func (int x)
{
    return 10*x;
}
#endif
То ошибка пропадает.
Просто при подключении множества файлов, вполне вероятно, что они будут использовать одну и ту же библиотеку, и что бы не вылазило такой ошибки для этого и нужно так делать.

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