![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
Mr.tai
这个作者很懒,什么都没留下…
展开
-
【C++】函数指针与函数对象
1 函数指针函数指针是指向函数的指针变量,函数指针可以用于函数调用、函数回调。函数指针变量的声明:int (*fun_ptr)(int, int); // 声明一个指向同样参数、返回值类型的函数指针fun_ptr函数指针存放函数的入口地址,可以像一般函数一样,用于函数调用。实例:int Max(int x, int y){ return x > y ? x : y;}...原创 2020-02-21 01:01:30 · 241 阅读 · 0 评论 -
【C++】浅拷贝与深拷贝
浅拷贝:只是拷贝了基本类型的数据,而引用类型数据,复制后也是会发生引用,我们把这种拷贝叫做“浅拷贝”,换句话说,浅拷贝仅仅是指向被复制的内存地址,如果原地址中对象被改变了,那么浅拷贝出来的对象也会相应改变。深拷贝:在计算机中开辟了一块新的内存地址用于存放复制的对象。浅拷贝不用拷贝数据内容,效率相较于深拷贝要高。但是也存在一个问题,如果成员中包含指针,由于浅拷贝中的指针与原指针指向同一个内存,对...原创 2019-08-18 15:26:09 · 122 阅读 · 0 评论 -
【C++】虚函数表实现机制
这篇关于虚函数表实现机制的文章写得太好了,可以好好学习!原创 2019-08-18 21:11:06 · 186 阅读 · 0 评论 -
【C++】重载 & 覆盖 & 隐藏 & 多态
重载(overlord):在同一个作用域内,函数名相同,参数列表不同(参数个数不同,或者参数类型不同,或者参数个数和参数类型都不同),返回值类型可相同也可不同。重载是一种静态多态,即在编译期间便可绑定到对应函数。覆盖(override):父类函数为虚函数(virtual),在子类中定义一个与父类完全相同的虚函数(函数名,参数个数,参数类型,返回值类型都相同),那么这个子类的函数就覆盖了父类的...原创 2019-08-18 21:07:09 · 172 阅读 · 0 评论 -
【C++】公有继承 & 保护继承 & 私有继承
下面列出三种不同的继承方式的基类成员在派生类中的限定:公有继承保护继承私有继承publicpublicprotectedprivateprotectedprotectedprotectedprivateprivate不可见不可见不可见总结:无论何种继承方式,基类private成员在派生类中强化限定为“不可见”(派生类成员函数不可访问...原创 2019-08-18 18:41:10 · 203 阅读 · 0 评论 -
【C++】const 成员函数
const(常)成员函数是一种获取对象状态的成员函数,并且不能改变对象的状态(也就是不能修改对象的成员的值)。声明和定义如下:class A{public: void func() const;};A::void func() const{ // 常成员函数}问题一:如果有两个同名函数,只是其中一个是常成员函数,这样的写法有错吗?class A{public: vo...原创 2019-08-18 16:20:00 · 879 阅读 · 0 评论 -
【C++】do {...} while (0) 在宏定义中的作用
https://blog.csdn.net/lanxuezaipiao/article/details/18841649原创 2019-08-02 09:50:21 · 282 阅读 · 0 评论 -
【C++】typedef用法详解
C++ typedef用法详解原创 2019-08-04 12:29:24 · 265 阅读 · 0 评论 -
【C++】引用传参
代码一:C++默认传参为值传递,x、y为a、b的副本,函数swap结束后x、y虽成功交换,但被立即释放,并不影响a、b的值。#include <iostream>using namespace std;void swap(int x, int y){ int z; z = x; x = y; y = z;}int main(){ int a = 1; in...原创 2019-07-30 23:52:40 · 1400 阅读 · 0 评论