Вы сообщаете своему компилятору, какие файлы на C++ компилируются. #include
не имеет к этому никакого отношения.
Например, если вы используете г ++:
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
Если вы используете Visual Studio, и вы создали проект, все файлы C++, которые вы создаете, будут автоматически компилируется.
Если вы не используете ни, скажи мне имя вашего компилятора, и я могу сказать вам точный синтаксис :)
Теперь, для другого вопроса:
Кроме того, если header.cpp включает iostream, почему я не могу использовать iostream вызовы функций в text.cpp, если он включен ? Если включить iostream в text.cpp, он будет включен в программу дважды (другими словами, раздувание )?
сообщает компилятору, что он просто «скопирует все содержимое файла, в который вы включаете, и вставьте их там, где строка #include». Итак, теоретически вы можете просто открыть iostream
с помощью блокнота, выбрать все, ctrl-c и ctrl-v в вашем .cpp-файле, а конечный эффект будет точно таким же: =
Так что да, это должно быть включенной для каждого .cpp-файла, в котором вы хотите его использовать, и он не будет «раздувать» вашу программу: он содержит только определения классов, внешние функции и т. д.
О, и это само собой разумеется, но C++ это очень обширный и сложный язык программирования, вам будет намного лучше узнать его через книгу, чем руководство. Если вы не хотите тратить деньги, бесплатная бесплатная (загружаемая) книга C++ - Thinking in C++, Bruce Eckel. В противном случае, если вы хотите его купить, вы можете найти хороший список here.
Вы не похожи на придурка. Придурок не просит помощи. – GManNickG