c++问题细节学习

1 C++函数默认参数
(函数参数默认为某个数)
2 c++中class 类中的staic函数
A:由于没有传递this 指针,静态成员函数只能访问static 成员 不能访问非static 成员
参考:
C++ 类中的static 成员函数
B:static 修饰的成员 函数 可以是 public,protect,private
参考:
c++中 static 变量和函数能否被子类继承
3 c++ 中成员函数的this
1:this 指针是隐含在非静态成员函数里面的一种指针
2:this 不需要定义,直接使用就可以
3:this 指针指向被调用的成员函数所属的对象
用途:
1 当形参和成员变量同名时,用this进行区分
2 在类的非静态成员函数中返回对象本身,可以使用 return *this
参考:
C++中this与*this的区别


4 模板函数跟模板类

template <typename T>
后面跟 class  或者  函数

1 区别
模板类有l模板式样的函数,变量,但是模板函数用用在函数里面
2 区别
模板类 内的成员必须指定 类型。但是模板函数有自我推导能力。

4 .0 c++ 类模板
目的:类模板,可以定义相同的操作,拥有不同数据类型的成员属性
注意:类继承的父类为模板类的时候,模板类要指明属性
参考
C++类模板和模板类
4.1 C++中的函数模板
1 参数列表在时间使用时,才确定类型
C++中的函数模板


5 声明为const的class 成员函数
例如 virtual float masterVolume() const;
若将成员函数声明为const,则该成员函数不允许修改该类的数据成员。
C++的const类成员函数

6 C++ 类中的static成员的初始化
int classA::member = 1;
C++ 类中的static成员的初始化和特点

**

7 null 跟 nullprt 区别

**
a nullprt 表示 指针空值,是对 NULL的优化
b 在 c++ 11 中,所以编译要加 -std=c++11
C++11中的指针空值nullptr

8 C++构造函数后面加:冒号

1 冒号后面跟成员,是给成员赋值
2 冒号后面跟父类,是初始化父类
C++子类的构造函数后面加:冒号的作用

**

9 C++ 中new对象时加括号()与不加括号

**
加括号 则初始化为 0
C++ 中new对象时加括号()与不加括号()分析

10 C++中class里包含class

11 类型转换

**
1 static_cast和dynamic_cast详解
static_cast 可以理解为 c语言里面的强转
2
dynamic_cast运算符的主要用途:将基类的指针或引用安全地转换成派生类的指针或引用,然后用派生类的指针或引用调用非虚函数。
前提条件:当我们将dynamic_cast用于某种类型的指针或引用时,只有该类型含有虚函数时,才能进行这种转换。否则,编译器会报错。
C++中深入理解dynamic_cast
3
隐式构造 与 explicit关键字
C++ explicit关键字详解

12 const 修饰参数
void f1(const Widget * pw)// f1获得一个指针,这个指针指向一个常量的Widget对象
c/c++之const

13
缺省构造即构造函数
C++基础:缺省构造函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值