Это не C++ а Visio.Originally Posted by марик - камарик
Это не C++ а Visio.Originally Posted by марик - камарик
Have a nice day and fuck somebody.
Bumper sticker
Source file это тот файл где ты пишешь реальизацию своих функций (функций-членов классов и т.д.) Хедеры, это те файлы которые т объявляешь.Originally Posted by марик - камарик
хедеры идут или без расширения или как .h .hpp сорсы как .cpp
глубина, глубина, я не твой, отпусти меня, глубина (с)
ипать. тут нужо курить доки, иначе ничего не поможетOriginally Posted by марик - камарик
глубина, глубина, я не твой, отпусти меня, глубина (с)
Таааак... а теперь какие файлы я объявляю и что это значит?Originally Posted by Ultra
====================functions.h=================== ====Originally Posted by марик - камарик
#ifndef __FUNCTIONS_H_EXAMPLE__
#define __FUNCTIONS_H_EXAMPLE__
int Max(int,int); // просто так показать
#endif
====================functions.h=================== =====
====================functions.cpp================= =====
#infclude "functions.h"
int Max(int x, int y)
{
return ((a > b) ? a : b);
}
====================functions.cpp================= =====
====================main.cpp====================== ====
#include "functions.h"
#include <iostream>
using std::cout;
using std::cin;
using std::endl;
int main(void)
{
cout << "Enter 2 integers: " << endl;
int a, b;
cin >> a >> b;
cout << "Maximum is: " << Max(a, b) << endl;
return 0;
}
=====================main.cpp=====================
А теперь как это работает. Сначала компилер компилит main.cpp и functions.cpp и ты получаешь объектный код main.obj и functions.obj затем линкер линкует все это и ты получаешь исполняемый exe файл. Грубо говоря конечно
глубина, глубина, я не твой, отпусти меня, глубина (с)
А вот теперь почти понятно... Спасибо.Originally Posted by Ultra
1. Если я хочу обращаться в "main" файле к файлу "functions" то у меня должно фигурировать #include "functions.h" в main файле и в functions файле так?
2. Имя функции к которой я обращаюсь достаточно показать в header чтобы оно было global, так?
Да. Но линкер должен обязательно знать нде найти реализации функций.Originally Posted by марик - камарик
В Хедере ты объявляешь прототип функции. Чтобы потом использовать ее по так называемой сигнатуре. блин, тут много всего обхяснять. В Хедере объявляешь прототип, потом реализуешь ее. Если потототип есть то все скомпилится отлично. Но если нету реальизации то на этапе линковки линкер начнет материться.
глубина, глубина, я не твой, отпусти меня, глубина (с)
понятно. А может знаешь где об этом подробно можно почитать? У меня учебник плохой(зато 200 баксов стоил) учитель ниче толком не объяснил. Тока примеры дал. MSDN скачал - оказался на испанском. Сижу вот голову ломаю.Originally Posted by Ultra
С++ Programming: Program Design Including Data Structures. Second Edition. D.S. MalikOriginally Posted by марик - камарик
ISBN: 0-619-16044-6
глубина, глубина, я не твой, отпусти меня, глубина (с)
всегда восхищался людьми читающими такие книжки...:evillaughOriginally Posted by Ultra
Ок. Спасибо. Поищу
There are currently 1 users browsing this thread. (0 members and 1 guests)
|
|
Terms of Service | Privacy Policy |
|