说我有一个文件main.cpp
,其中包含另一个文件header.h
,其中包含algorithm
。我是否还需要在algorithm
中加入main.cpp
?或者我可以留下它吗?
答案 0 :(得分:1)
如果#include <algorithm>
使用任何函数或类,或main.cpp
中定义的任何其他内容,则需要将main.cpp
添加到<algorithm>
。
其他翻译单位使用的内容无关紧要。
答案 1 :(得分:1)
不,你不需要。可以将“#include”视为将包含文件的全部内容复制并粘贴到该行的方向。
other.h:
#include <string>
#include <vector>
std::string getString()
{
return "A String";
}
main.cpp中:
#include <iostream>
#include "other.h"
int main()
{
std::vector<std::string> vec{getString(), getString()};
for (auto &it : vec) {
std::cout << it << std::endl;
}
return 0;
}