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>;
相关推荐
NAGNIP1 小时前
一文搞懂深度学习中的通用逼近定理!
人工智能·算法·面试
端平入洛8 小时前
delete又未完全delete
c++
颜酱10 小时前
单调栈:从模板到实战
javascript·后端·算法
CoovallyAIHub13 小时前
仿生学突破:SILD模型如何让无人机在电力线迷宫中发现“隐形威胁”
深度学习·算法·计算机视觉
CoovallyAIHub13 小时前
从春晚机器人到零样本革命:YOLO26-Pose姿态估计实战指南
深度学习·算法·计算机视觉
CoovallyAIHub13 小时前
Le-DETR:省80%预训练数据,这个实时检测Transformer刷新SOTA|Georgia Tech & 北交大
深度学习·算法·计算机视觉
CoovallyAIHub13 小时前
强化学习凭什么比监督学习更聪明?RL的“聪明”并非来自算法,而是因为它学会了“挑食”
深度学习·算法·计算机视觉
CoovallyAIHub13 小时前
YOLO-IOD深度解析:打破实时增量目标检测的三重知识冲突
深度学习·算法·计算机视觉
NAGNIP1 天前
轻松搞懂全连接神经网络结构!
人工智能·算法·面试
NAGNIP1 天前
一文搞懂激活函数!
算法·面试