c++的头文件使用

👍 下面是每种在头文件中常见内容的示例写法(C++标准格式):


✅ 1. 函数声明

复制代码
// 函数声明(不定义函数体)
int add(int a, int b);
double getAverage(double x, double y);

✅ 2. 类声明

复制代码
// 类声明(仅定义接口,不写函数体)
class Student {
public:
    void setName(const std::string& name);
    std::string getName() const;
private:
    std::string name;
};

✅ 3. 常量定义

在头文件中推荐使用 constexprconst,而不是 #define

复制代码
const double PI = 3.14159;
constexpr int MAX_SIZE = 100;

✅ 4. 宏定义

宏是预处理器指令,不建议滥用。

复制代码
#define DEBUG_MODE
#define SQUARE(x) ((x) * (x))
#define MAX(a, b) ((a) > (b) ? (a) : (b))

✅ 5. 模板定义

复制代码
// 函数模板
template <typename T>
T add(T a, T b) {
    return a + b;
}

// 类模板
template <typename T>
class Box {
public:
    T value;
    Box(T v) : value(v) {}
};

✅ 6. 内联函数

复制代码
inline int multiply(int a, int b) {
    return a * b;
}

✅ 7. 类型别名

复制代码
typedef unsigned int uint;     // 旧写法
using uint32 = unsigned int;   // 推荐的新写法 (C++11 起)
using StringList = std::vector<std::string>;
相关推荐
无小道7 分钟前
QT——QFIie和QFileInfo文件类
开发语言·qt·命令模式
Dovis(誓平步青云)12 分钟前
《滑动窗口算法:从 “暴力遍历” 到 “线性高效” 的思维跃迁》
运维·服务器·数据库·算法
踢足球092926 分钟前
寒假打卡:2026-2-7
java·开发语言·javascript
一只小小的芙厨29 分钟前
AT_tkppc3_d 巨大チェスボード 题解
c++·题解
我在人间贩卖青春32 分钟前
C++之继承与派生类的关系
c++·向上造型·向下造型
Trouvaille ~33 分钟前
【Linux】应用层协议设计实战(二):Jsoncpp序列化与完整实现
linux·运维·服务器·网络·c++·json·应用层
_OP_CHEN38 分钟前
【算法基础篇】(五十七)线性代数之矩阵乘法从入门到实战:手撕模板 + 真题详解
线性代数·算法·矩阵·蓝桥杯·c/c++·矩阵乘法·acm/icpc
天天爱吃肉821843 分钟前
【跨界封神|周杰伦×王传福(陶晶莹主持):音乐创作与新能源NVH测试,底层逻辑竟完全同源!(新人必看入行指南)】
python·嵌入式硬件·算法·汽车
im_AMBER44 分钟前
Leetcode 114 链表中的下一个更大节点 | 删除排序链表中的重复元素 II
算法·leetcode
EmbedLinX1 小时前
嵌入式之协议解析
linux·网络·c++·笔记·学习