笔试强训选择题day11,12

day11

内联函数

在这里插入图片描述
内联函数不能太长,有循环,有递归

重载函数

在这里插入图片描述
函数名一样,参数列表不一样

构造函数次数

在这里插入图片描述
数组看数组中有几个元素,指针数组只需要构造一次

在这里插入图片描述
ad是一个数组指针,该指针指向PAT类型的3个连续的空间,该类型并未创建对象,所以没有调用构造函数

赋值运算符重载

在这里插入图片描述
如果用户没有显式定义赋值运算符重载时,编译器自动生成一份,按照浅拷贝方式来实现

赋值运算符只能作为类的成员函数重载,参数列表中有一个隐藏的this指针,所以只能放一个参数

静态成员函数

在这里插入图片描述
静态成员时是所有类对象共享的,所以不能在类内初始化

在这里插入图片描述
静态成员变量没被const修饰,只能在类中声明,类外定义
加了const就可以类内定义

可以通过对象.静态成员变量或者类名::来访问

析构函数

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
delete将当前对象销毁掉
不推荐该使用方法

模板调用

在这里插入图片描述
在这里插入图片描述

day12

引用和指针

在这里插入图片描述
引用:是一个别名,与其引用的实体共用一端内存空间,编译器不会给引用变量重新开辟新的内存空间

析构函数

在这里插入图片描述
A:析构函数类中类外都能定义,可以类中声明,类外定义
析构函数没参数,没返回值

运算符重载

在这里插入图片描述
类名,关键字,运算符一个都不能少

构造函数个数

在这里插入图片描述
创建一个对象才会调用构造函数,创建一个指针不会调用
new开辟空间后,调用构造函数初始化
引用只是一个别名,没创建对象

类和对象描述

在这里插入图片描述
类使用来描述对象,描述对象有哪些属性,有哪些方法
对象是类的具体体现
在这里插入图片描述
单例模式:一个对象只能创建一个对象。
但可以创建多个对象
在这里插入图片描述
A选项:如果没定义的话,编译器会生成一个无参的构造函数,有的话就不会生成
B选项:有的类可以不用生成拷贝构造,先在本类声明但不定义,编译器也不会自己生成。
D选项:只能由一个析构函数

析构函数和this指针

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
类中每个非静态成员函数中都有一个隐藏的this 指针参数

友元函数不是类的成员函数,也没有this指针,也不会收访问限定符的限制

堆和栈

在这里插入图片描述
堆上都是动态分配,而栈上既可以动态分配,也可以静态分配—比如在函数体中创建了一个数组

在这里插入图片描述
alloca是在栈上开辟的,自动释放

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值