如何让CLion默认使用"#pragma once"而不是"ifndef ... def ..."为新的头文件?

bec*_*cko 10 pragma include-guards include header-files clion

默认情况下,CLion会将以下行添加到新创建的头文件中:

#ifndef SOME_NAME_H
#define SOME_NAME_H
.... your code here
#endif //SOME_NAME_H
Run Code Online (Sandbox Code Playgroud)

但我#pragma once更喜欢.如何配置CLion以便#pragma once默认使用新的头文件?

Cod*_*oka 12

去吧File-> Settings -> Editor -> File and Code Templates.你会发现有3个标签,分别是Templates,IncludesCode.现在Templates选择例如C头文件.插入#pragma once以替换其内容.现在,每次从项目菜单添加新的标题时,您都会拥有自己的模板.

  • 注意:`#pragma`无效[Apache Velocity](http://velocity.apache.org/)模板,因为`#foo`将被解析为名为`foo`的指令.在这里使用[文字语法](http://velocity.apache.org/engine/1.7/user-guide.html#literals)更安全,比如`#[[#pragma]]#once`. (4认同)
  • 对于“CLion 2021”,请使用 CLion >“首选项...”>“编辑器”>“文件和代码模板”>“C++ 类标头”。 (2认同)