c++语法

  1. 构造函数

需求:每单定义一个新的对象,都希望对象中成员倍初始化一次。

类提供了一个专门的函数来完成对象的初始化,称为构造函数。和类名一致,没有返回值不是void,用于和普通函数区分。

  1. this指针

每一个对象都隐藏了1个指针,this,指向对象自己,通过this指针可以获取对象本体。

  1. 函数重载

函数名相同,参数不同(类型,个数不同)

函数重载在c++中,允许函数的名字相同,但是参数列表的类型不同,这时才能调用不同的函数,达到函数同名的目的。

  1. malloc和new的区别

他们都是c++、C语言的标准库函数,new返回指定类型的指针,并且自动计算所需要大小,malloc必须由程序员计算字节数,再返回后强行转换为实际类型的指针,new/delete在对象创建的同时可以自动执行构造函数初始化,在对象在消亡之前会自动执行析构函数。而malloc 只管分配内存,并不能对所得的内存进行初始化,所以得到的一片新内存中,其值将是随机的;

new和delete的分配原理图如下,

const关键字

用于修饰类中的成员变量,如果一个类的成员变量希望被保护,不能够被修改。用法类似只读,const数据成员的值不能修改。

  1. 在创建对象时,const数据成员必须进行初始化,通过创建对象时的构造函数的初始列表完成初始化工作。

  1. const修饰成员函数,表示成员函数中没有任何成员变量修改函数。

只要有const修饰当前函数就不会有参数修饰,这样就不会报错,而像图中所示这样如果加上const就会报错,

对象用const修饰表示整个对象不能修改,只能访问const修饰的成员函数

Staic声明函数或变量为静态

1、staic修饰成员变量(静态变量),C语言中定义了静态变量存储在静态区,不用再创建的hi二次,

类定义全局变量方式:

数据类型 作用域运算符(类名 冒号 静态成员变量名)

2、static

函数属于整个类,所有的对象都是用同一个函数,相当于没有this指针,只能访问静态变量(所有的变量都是同一个),在静态成员函数中,只能访问静态变量,会报错,

使用static成员

对象名.静态成员

和c作用一致 A、static修饰成员变量-----静态成员变量 static成员变量由类进行定义,在对象创建之前就定义好,即定义为全局变量

类名::静态成员(因为是类创建的静态函数),普通成员一定要有对象,因为有对象才能创建空间,函数也是一样的写法

格式:数据类型类名::静态成员变量名

虚函数没有具体的实现。基类是个接口,并没有实现,

传虚函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值