Powiesz kompilatorowi, które pliki C++ chcesz skompilować. #include
nie ma z tym nic wspólnego.
Na przykład, jeśli używasz g ++:
g++ text.cpp // Doesn't compile header.cpp
g++ text.cpp header.cpp // Compiles both
(or, alternatively you can compile one file at a time and then link them)
g++ text.cpp -o text.o
g++ header.cpp -o header.o
g++ text.o header.o -o your-program
W przypadku korzystania z programu Visual Studio i stworzyli projekt, wszystkie pliki C++ utworzone zostaną automatycznie skompilowany.
Jeśli używasz nie, powiedz mi nazwę kompilatora i mogę powiedzieć dokładnej składni :)
Teraz na inne pytanie:
Ponadto, jeśli header.cpp zawiera iostream, dlaczego nie mogę używać wywołań funkcji iostream w text.cpp, jeśli jest to zawarte? Jeśli dołączę iostream w wersji text.cpp, zostanie on dwukrotnie uwzględniony w programie (innymi słowy, będzie to oznaczać, że jest on zbyt duży)?
#include
mówi kompilator, aby po prostu "skopiować całą zawartość pliku, który jesteś w komplecie, i wklej je tam, gdzie jest linia #include". Tak więc teoretycznie można po prostu otworzyć iostream
za pomocą notatnika, zaznaczyć wszystkie, ctrl-c i ctrl-v w pliku .cpp, a efekt końcowy będzie dokładnie taki sam =)
Tak, tak musi być dołączony do każdego pliku .cpp, w którym chcesz go użyć, i nie będzie "nadużywał" twojego programu: zawiera tylko definicje klas, funkcje zewnętrzne, itp.
Och, i to jest oczywiste, ale C++ jest bardzo rozległym i trudnym językiem programowania, będziesz miał dużo lepszego szczęścia, ucząc się go poprzez książkę niż przewodnik. Jeśli nie chcesz wydawać pieniędzy, książka w porządku C++ (do pobrania) to Thinking in C++, Bruce Eckel. W przeciwnym razie, jeśli chcesz go kupić, możesz znaleźć dobrą listę here.
Nie brzmisz jak kretyn. Głupek nie prosi o pomoc. – GManNickG