You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Qt Creator中自定义新建类的头文件包含保护模板?

自定义Qt Creator的头文件包含保护模板

当然可以!Qt Creator完全支持自定义类生成时的头文件包含保护格式,不管是全局统一设置,还是针对单个项目定制,都能轻松实现。下面一步步给你讲具体操作:

一、全局模板修改(所有新项目生效)

这个方法会让你创建的所有新C++类都使用自定义的保护格式:

  1. 打开Qt Creator,点击顶部菜单栏的工具 -> 选项

  2. 在弹出的设置窗口中,选择左侧的C++分类,然后切换到文件和类标签页

  3. 在「文件模板」列表里找到C++ Class,选中后点击右侧的「编辑」按钮

  4. 在打开的模板编辑器中,找到头文件(.h)的模板内容,定位到头文件保护的部分:

    #ifndef ${HEADER_GUARD}
    #define ${HEADER_GUARD}
    // ... 其他模板代码
    #endif // ${HEADER_GUARD}
    
  5. 将${HEADER_GUARD}替换成你想要的格式,比如:

    • 固定前缀+类名:SOMETHING_${CLASS_NAME}_H
    • 项目名+类名:${PROJECT_NAME}_${CLASS_NAME}_H
    • 命名空间+项目名+类名:${PROJECT_NAMESPACE}_${PROJECT_NAME}_${CLASS_NAME}_H
      (Qt Creator的模板变量会自动替换成对应内容,比如${CLASS_NAME}会变成你创建的类名大写,${PROJECT_NAME}是当前项目名称的大写)
  6. 保存模板修改,关闭设置窗口即可。下次创建新类时,就会自动生成你自定义的头文件保护了。

二、项目级自定义(仅当前项目生效)

如果你只想让某个特定项目使用自定义格式,而不影响全局设置,可以这么做:

  1. 在你的项目根目录下,创建一个名为.qtcreator/templates的文件夹(注意开头的点,是隐藏文件夹)
  2. 从Qt Creator的全局模板目录中复制C++ Class的头文件模板(class.h)到这个新建的文件夹里
  3. 按照上面全局修改的方法,修改这个class.h模板里的头文件保护格式
  4. 重启Qt Creator后,当前项目创建新类时就会优先使用这个项目内的模板,而不是全局模板

举个实际的例子,如果你把模板改成这样:

#ifndef MY_PROJECT_${CLASS_NAME}_H
#define MY_PROJECT_${CLASS_NAME}_H

#include <QObject>

class ${CLASS_NAME} : public QObject
{
    Q_OBJECT
public:
    explicit ${CLASS_NAME}(QObject *parent = nullptr);

signals:

public slots:
};

#endif // MY_PROJECT_${CLASS_NAME}_H

当你创建Foo类时,生成的头文件保护就会是MY_PROJECT_FOO_H,完全符合你的需求。

内容的提问来源于stack exchange,提问作者Moia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 08:18:43