c++内联函数

#include<iostream>//c++的输入输出

using namespace std;

//int inline add(int a, int b)

//{

// return a + b;

//}

////int add(int a, int b)

////{

//// return a + b;

////}

//int main()

//{

// //内联函数与有参宏的区别?

// // 1.有参宏是在预处理的时候展开的,内联函数在编译时展开

// // 2.有参宏是直接文本替换,而内联函数是有语法检查的

// //对于简单函数(可能存在高频次的调用)我们可以设计为inline函数(内联函数)

// // 内联函数设计时一定要体积小,逻辑简单

// // inline函数在被调用的位置上,进行展开(内嵌),就是将函数体的功能直接拿出来使用而不会像普通函数一样需要经过复杂操作

// int ret = add(10, 20);//add是inline函数,则会直接展开

// //调用add函数的时候,系统做了什么事情?

// // 1.保存现场2.将函数入栈3.以先右后左将实参入栈4.调用函数功能并获取结果5.恢复现场,接收结果,同时回收上一次函数的栈空间

// ////1.指针变量可以存在引用 数据类型*&引用名=指针变量

// //int n = 10;

// //int* np = &n;

// //int*& np_r = np;

// //const int* np2 = np;

// //const int*& np2_r = np2;

// ////2.数组能存在别名 数据类型(&别名)长度...=数组名

// //int arr10{ 1,2,3,4,5,6,7,8,9,10 };

// //int(&arr_r)10 = arr;

// //for (int i = 0; i < 10; i++)

// //{

// // cout << arri << " ";

// //}

// //设计字符串

// ////引用的本质:在编译时,将引用优化为指针

// ////普通引用优化成指针常量

// //int n = 1;//n 是一块内存,值为1

// //int* p = &n;//p里面存着n的地址

// //int& r = n;//r就代表n 没有独立内存 优化后为 int *const r=&n;

// //*p = 5;//通过*从内存中把n改成5 此时r也变成5

// //r = 10;//直接操作n 将n变为10

// ////*p r n 都为10

//}

////利用引用进行交换

////void swap_val(int& a, int& b)

////{

//// int temp = a;

//// a = b;

//// b = temp;

////}

////int main()

////{

//// int x = 10;

//// int y = 20;

//// swap_val(x, y);

////}

////int main()

////{

//// //const引用:万能引用 初始化值可以为常数 变量 const变量

// const int& len = 1;//可以给常数

// const int len2 = 20;

// const int& len2_r = len2;

// //int& y = len2_r;len2_r相当于常数 普通引用不能引用常数

//}

相关推荐
TAN-90°-6 分钟前
Deep Learning for Computer Vision——Generative Models 2
人工智能·深度学习·神经网络·算法·目标检测·机器学习·计算机视觉
Rabitebla13 分钟前
【Linux系统编程】指令(三):创建、删除、复制、移动、看内容
linux·数据结构·c++·算法
qq_410194291 小时前
.NET 8.0 下基于 PaddleOCRSharp 的离线文字识别落地指南
算法·.net
Omics Pro1 小时前
1个月2轮融资!长寿虚拟细胞
数据库·人工智能·算法·机器学习·自然语言处理
residual_fan1 小时前
航空发动机故障诊断专用智能体(六):实际机队健康管理中的应用考量与展望
人工智能·算法·数据挖掘·数据分析
hansang_IR1 小时前
【讲解】CSP-S2026 第一轮初赛
c++·算法
hanlin031 小时前
刷题笔记:力扣第76题-最小覆盖子串
笔记·算法·leetcode
Zane19941 小时前
比较排序跑不出O(nlogn)是数学上证明过的,计数、桶、基数排序凭什么能绕开这堵墙
算法·排序算法
tiger8651 小时前
大语言模型面试和题解,梳理中国主流开源 LLM 系列的发展脉络、技术路线与工程取舍
人工智能·gpt·深度学习·算法·自然语言处理·面试·transformer
我不会起名字3222 小时前
一天一道力扣Hot100(36):深度优先算法---组合总和
数据结构·c++·后端·python·算法·go