我有一个只有这段代码的main.cpp文件:
#include <iostream>
#include "include/rapi/RApi.h"
using namespace std;
int main() {
std::cout << "Test\n";
return 0;
}
当我编译时,我希望看到来自我的代码的警告,但不是来自外部包含的文件。我以前能够实现这一点,但是我可能在编译标志中遗漏了一些东西,因为当我不想看到它们时,我一直在从包含的头文件中查找错误。
这是我的编译命令:
g++ -isystem include -pedantic -Wall -Wextra main.cpp -o main.o
我希望看到来自main.cpp的警告和错误,但不是来自include文件夹中的文件。
我已尝试-isysteminclude
-isysteminclude/rapi
,将-isystem
传递到旗帜的末尾,但无济于事。
我在这里错过了什么吗?
答案 0 :(得分:4)
您需要将-isystem include
添加到编译行,然后在代码中使用:
#include "rapi/RApi.h"
(不是include/rapi/RApi.h
)。 -isystem
选项仅应用&#34;系统标题&#34;属性到使用该搜索路径查找的文件。如果您将完整路径放在#include
中,那么GCC会直接查找路径并且不使用-isystem
路径,因此&#34;系统标头&#34;属性未应用。
关于使用<>
vs ""
,行为的确切差异基本上是实现定义的。没有必要猜测,只需查看各种SO问题和答案,例如this one。
答案 1 :(得分:2)
placeholder= '"' + {this.props.edit_tag_reducer.time_in} + '"'