C++专栏
文章平均质量分 77
阿超没有蛀牙
软件测试工程师
展开
-
C++中的auto,你是这样用的吗
一、简介 auto关键字是能被称为C++中的语法糖系列的关键字,为什么这么说呢,因为这些关键字可以让代码变得非常的省事,不那么繁琐,这对于程序员来说,是一大利好。 提到auto关键字,就不得不提到它的更迭了。 1. C/C++98: 早期C/C++中auto的含义是:使用auto修饰的变量,是具有自动存储器的局部变量。 但是非常遗憾的是,一直没有人使用它,这是什么原因呢? 原因非常简单:因为在早期的C/C++中,auto被用来修饰局部变量,表明该变量是一个自动变量,这就意味着在函数结束之后,函数的栈帧就原创 2020-10-14 11:06:39 · 3858 阅读 · 5 评论 -
C++ 内联函数 学习总结
一、概念 以inline修饰的函数叫做内联函数,编译时C++编译器会在调用内联函数的地方展开,没有函数压栈的开销,内联函数提升程序运行的效率。 二、引入 在C++语言中,宏函数的使用是很便利的,但是它也存在着他的缺陷: 1、宏函数可能会存在一定副作用 2、在预处理阶段进行替换,不会参与编译,少了类型检测 3、宏函数不能调试 (等等其他缺陷,这里只提出三个主要缺陷) 具体表现在哪呢,我们可以通过下面一个代码和运行结果来看: #include <iostream> using namespace s原创 2020-10-09 18:09:30 · 787 阅读 · 2 评论 -
浅谈malloc、calloc、realloc使用异同(超详细)
文章目录一、malloc1.1 函数原型1.2 功能1.3 返回值二、calloc2.1 函数原型2.2 功能2.3 返回值三、realloc1.1 函数原型1.2 功能1.3 返回值四、相同点五、不同点 程序运行中动态分配内存,也就是从堆上分配内存,涉及到3个函数malloc、realloc、calloc,主要来看三个函数的使用异同。 一、malloc 1.1 函数原型 void* malloc (size_t size); 1.2 功能 分配一块长度为size个字节的连续区域。不进行初始化。可使用me原创 2021-05-18 15:21:38 · 630 阅读 · 2 评论 -
浅谈C++函数模板(一)
文章目录一、泛型编程二、函数模板2.1 概念2.2 格式2.3 原理2.4 函数模板实例化2.5 模板参数的匹配原则 首先要谈函数模板,先引入一个问题,什么是泛型编程? 来看个例子,如果我们现在要写一个通用类型加法的函数,那我们可能会这么写: 一、泛型编程 //整型 int Add(int x,int y) { return x+y; } //浮点型 double Add(int x,int y) { return x+y; } //字符型 char Add(int x,int y) {原创 2021-05-21 15:43:02 · 369 阅读 · 0 评论