Использование нескольких .cpp файлов в С++-программе?
Недавно я перешел из Java для С++, но теперь, когда я пишу свое приложение, мне не интересно писать все из кода в основной функции, которую я хочу в главной функции, чтобы вызвать другую функцию, но эта другая функция находится в другом. cpp.
Позвольте мне лучше объяснить, если вы не поймете:
У меня есть один файл: main.cpp
внутри него у меня есть основная функция.
У меня есть второй файл: second.cpp
внутри у меня есть функция под названием second()
Я хочу вызвать эту функцию под названием second()
из моей основной функции.
Любая помощь?
Ответы
Ответ 1
Вы должны использовать инструмент, называемый "заголовком". В заголовке вы объявляете функцию, которую хотите использовать. Затем вы включаете его в оба файла. Заголовок представляет собой отдельный файл, содержащий директиву #include
. Затем вы можете вызвать другую функцию.
// other.h
void MyFunc();
// main.cpp
#include "other.h"
int main() {
MyFunc();
}
// other.cpp
#include "other.h"
#include <iostream>
void MyFunc() {
std::cout << "Ohai from another .cpp file!";
std::cin.get();
}
Ответ 2
У вас должны быть файлы заголовков (.h), содержащие объявление функции, а затем соответствующий .cpp файл, содержащий определение. Затем вы включаете заголовочный файл везде, где это необходимо. Обратите внимание, что файл .cpp, содержащий определения, также должен включать заголовок (соответствующий).
// main.cpp
#include "second.h"
int main () {
secondFunction();
}
// second.h
void secondFunction();
// second.cpp
#include "second.h"
void secondFunction() {
// do stuff
}
Ответ 3
В C/С++ у вас есть файлы заголовков (*.H). Там вы объявляете свои функции/классы. Так, например, вы должны будете #include "second.h"
в свой main.cpp
файл.
В second.h
вы просто объявляете это как void yourFunction();
В second.cpp
вы реализуете его как
void yourFunction() {
doSomethng();
}
Не забывайте #include "second.h"
также в начале second.cpp
Надеюсь, что это поможет:)