c++期末复习小笔记

重载=符号 是this!=&s,不是this!=s,要记得加取地址符

想清楚是while(temp)还是while(!temp)

new的左边必须有个next,否则这个new出来的内存空间不会和原本链表头相连!!

除非是链表头!!!

链表的节点不只是要delete 还要=null!!!!而且是要->next=NULL!

引用

1.定义的同时初始化

2.引用对象从一而终

3.作为函数返回值时不能返回局部对象 一般与引用+形参搭配使用,返回形参

4.不能绑定在临时对象:

int *p1 = &(m + n);

int &r1 = m + n;

int &r4 = 50;

int &r5 = func_int();

bool isOdd(int &n)…isOdd(a + 9);

new的意义

为什么要给指针new内存,因为本身指针所存储的就是某一个数据类型的内存地址,如果一开始没有专门定一个int变量,又需要用到int *来操作int ,就需要new int,这个其实就省去了另外int 一个变量赋给int *

对象

1.static

static 成员变量的内存既不是在声明类时分配,也不是在创建对象时分配,而是在(类外)初始化时分配。

static 成员变量必须在类声明的外部初始化!静态成员变量在初始化时不能再加 static

初始化时可以赋初值,也可以不赋值。如果不赋值,那么会被默认初始化为 0。

int Student::m_total = 0;

2.friend “she is my friend, she can use my pens” friend是单向的而不是双向的。

friend void show(Student *pstu);

friend void Student::show(Address *addr);

friend class Student;

friend函数不能直接调用类成员,要借助对象,也就是以对象做friend函数的形参

const

const+指针:    const int* a //a不能修改  int* const a//指针不能修改

const+引用:编译器会为 const 引用创建临时变量 (是const引用不是const对象)

const int &r1 = m + n

b

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值