C++ - Как сделать так чтобы сурс файл читал подключённые библиотеки с файла "main.cpp"?
В файле main.cpp
подключён заголовочный файл GLFW/glfw3.h
. Я хочу сделать так, чтобы к этому заголовочному файлу имел доступ другой сурс файл, читая её с файла main.cpp
.
Вот например у меня есть 3 файла main.cpp
, source.hpp
и source.cpp
, source.hpp
подключена к source.cpp
. В файле main.cpp
подключён заголовочный файл GLFW/glfw3.h
в то время как в файле source.cpp
он не подключён, но Я хочу сделать так, чтобы файл source.cpp
читал заголовочный файл GLFW/glfw3.h
с файла main.cpp
.
Пример main.cpp
:
#include <GLFW/glfw3.h>
#include "source.hpp"
...
Вот например в этом примере source.hpp
не читает GLFW/glfw3.h
с main.cpp
.
Как сделать так, чтобы файл source.cpp
читал заголовочный файл GLFW/glfw3.h
не подключая её в самом source.cpp
и вообще возможно ли такое в C++?
Ответы (2 шт):
Не надо в .h и .hpp размещать исполняемый код.
Оберни код инициализации в функцию, которую надо поместить в cpp и вызвать в main.
Ещё файл можно помечать для однократного подключения с помощью (если поддерживается компилятором)
#pragma once
или более традиционно
#ifndef SOME_NAME
#define SOME_NAME
// тут остальной код
#endif
Создать файл compile.cpp
В нем инклуды всех .cpp мейн выше сорц.
Компилить только файл compile.cpp
И тогда будет поведение как описано. Компилиться будет только дольше при малых изменениях. И возможно иде не захочет полностью работать.