什么是 C++ 内联函数?它的作用是什么?

C++ 内联函数是一种特殊类型的函数,可以通过 inline 关键字进行定义。它们的主要作用是帮助提高程序效率,特别是在频繁调用的小函数中。

以 inline 修饰的 函数 叫做 内联函数,编译时C++编译器会在调用内联函数的地方展开,没有函数调用建立栈帧的开销(完美继承宏的优点)内联函数提升程序运行的效率

什么是内联函数?

内联函数的定义与普通函数基本相同,只是在函数定义前加上关键字inline

cpp 复制代码
// 声明一个内联函数
inline int add(int a, int b) 
{
    return a + b;
}

为什么要使用内联函数呢?

内联函数最初的目的:代替部分#define 宏定义

使用内联函数替代普通函数的目的:提高程序的运行效率

相关推荐
我是唐青枫1 小时前
C#.NET PInvoke 深入解析:封送、内存布局与原生互操作实战
开发语言·c#·.net
程序猿编码1 小时前
纯C++轻量计算机视觉推理引擎:基于GGML的端侧CV模型部署技术全解析
开发语言·c++·计算机视觉·大模型·transformer
SEO_juper1 小时前
外贸多语言站最隐蔽的流量杀手:hreflang 错了,谷歌把德语页推给美国人(附审计脚本)
开发语言·前端·python·seo·独立站·谷歌优化
geovindu2 小时前
CSharp: Strategy Pattern
开发语言·后端·c#·.net·.netcore·策略模式·行为模式
Tairitsu_H2 小时前
[C++] C++11新增构造:列表初始化和std::initializer_list
开发语言·c++·c++11·构造
宣宣猪的小花园.2 小时前
【嵌入式】故障与降级:看门狗、保护机制和工程可靠性的底线
开发语言·人工智能·嵌入式硬件·机器学习
hansang_IR2 小时前
【题解】P4456 [CQOI2018] 交错序列(矩阵乘法)
c++·线性代数·算法
shmily麻瓜小菜鸡2 小时前
JS/TS 易踩坑知识点 — 自动分号插入(ASI)
开发语言·javascript·ecmascript
CoderYanger2 小时前
前端基础——JavaScript(WebAPI)代码案例
java·开发语言·前端·javascript·css·前端框架·html5
geovindu2 小时前
CSharp: Task Scheduler
开发语言·后端·c#·.net·.netcore