C++杂记(1)

explicit: (本意:清晰的,明确的)

  • 作用:在C++类的构造函数(单参数)中声明,用来阻止隐式调用,如IntCell t1=32;
  • 用法:在构造函数前声明即可.

访问函数和修改函数:

  • 一般默认为修改函数,在函数结尾圆括号加上const表示一个访问函数,它不改变数据成员的值.

指针比较和赋值,是基于指向的地址.

关于函数传参:

  • 按值传递:适合不被函数更改的小对象
  • 常量引用传递:适合不被函数更改的大对象 eg:const vector &test
  • 引址调用:适合所有可被函数更改的对象. 用&.
    waing: 尽量少用引址返回,会导致很多隐藏的错误!
    LACK 引用变量必须初始化??

析构函数的必要:

  • 如果类的成员含有指针,或有new过的变量,则必须在析构函数中释放.

复制构造函数和’=’重载:

  • 复制构造函数在初始化一个变量时调用,如果定义一个变量等于一个已存在的变量,则调用复制函数
    以及’=’. LACK 为什么会调用’=’??且Test test3(test2);也会这样.
  • 两个已存在变量的赋值,只会调用’=’!!!
  • 如果成员有指针,则必须写这两个函数,否则是浅复制,只复制指针的值,需要深复制.

在new堆中声明一个数组: area *one=new area[100];

注意: 删除时时: delete []one;     //不是delete one[];    为何,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值