C++基础知识概念

C++基础知识概念

自己在复习C++的过程中整理了大约100个常见的问题以及重要知识点,和大家一起分享。
全文几乎都是 概念性解答,主要参考书籍是 清华大学出版社郑莉 老师主编的 《C++语言程序设计(第四版)》

接下来是索引目录,会分为4篇文章,每篇文章解答25个问题概念,可以通过大标题直接定位到该篇文章;

如果其中问题 概念解答有什么错误或者不当的地方,欢迎大家指出来,让我们一起进步,谢谢大家~

索引目录

C++基础知识概念(一)

1 比较值传递和引用传递的相同点和不同点。
2 什么叫内联函数?它有哪些特点?
3 什么叫拷贝构造函数?拷贝构造函数何时被调用?
4 复制构造函数与赋值运算符(=)有何不同?
5 什么叫作用域?有哪几种类型的作用域?
6 什么叫做可见性?可见性的一般规则是什么?
7 什么叫静态数据成员?他有何特点?
8 什么叫静态函数成员?他有何特点?
9 什么叫友元函数?什么叫友元类?
10 在函数内部定义的普通局部变量和静态局部变量在功能上有何不同?计算机底层对这两类变量做了怎样的不同处理导致了这种差异?
11 引用和指针有何区别?何时只能使用指针而不能使用引用?
12 比较类的 3 种继承方式之间的差别?
13 什么叫虚基类?有何作用?
14 组合与继承有什么共同点和差异?通过组合生成的类与被组合的类之间的逻辑关系是什 么?继承呢?
15 基类与派生类的对象,指针或引用之间,哪些情况下可以隐含转换,哪些情况下可以显 示转换?在涉及多重继承或虚继承的情况下,在转换时会面临哪些新问题?
16 什么叫做多态性?在 C++种是如何实现多态的?
17 什么叫抽象类?抽象类有何作用?抽象类的派生类是否一定要给出纯虚函数的实现?
18 在 C++中,能否声明虚构造函数?为什么?能否声明虚析构函数?有何用途?
19 什么叫做流?流的提取和插入是指什么?I/O 流在 C++中起着怎样的作用?
20 什么叫做异常?什么叫做异常处理?
21 C++的异常处理机制有何优点?
22 比较函数重载和虚函数在概念和使用方式方面有什么区别?
23 比较 class 和 struct 结构体的异同
24 浅拷贝和深拷贝的区别?
25 const 和 static 作用 const 作用:

C++基础知识概念(二)

26 析构函数带 virtual 和 不带 virtual 的区别
27 重写、重载和隐藏的区别?
28 C++中的四个默认的函数
29 不可以被重载的运算符–五个
30 三种字符数组初始化的方法
31 哪些操作符必须重载为成员函数
32 什么是“else 摇摆问题”,举例说明
33 函数模板和函数重载的区别与联系
34 怎样区别虚函数和纯虚函数?两者都有什么作用
35 面向对象程序“接口与实现方法分离”,有什么作用(好处)
36 列出所有与字符串处理有关的头文件
37 C++中显示类型转换
38 delete 和 delete [] 的区别?
39 存储类别说明符可划分为两类。
40 什么是运算符重载,它如何增强 C++的扩展性?
41 为什么说”继承是 C++面向对象的主要特征之一”?请简要说明?
42 作用域辨析有哪些?
43 STL 是什么?组成部分和区别。
44 如何声明和使用虚函数。说明它在多态性中的作用和意义。
45 什么是逻辑错误?什么是语法错误?请举例说明。
46 编写语句说明枚举类型是如何定义和使用的。
47 ADT是什么?简述你对“数据抽象”和“信息隐藏”的认识。
48 简述你对“面向对象”和“面向过程”编程思想的理解和认识。
49 写出递归函数定义以及相应的优缺点
50 写出包含输入输出的标准库

C++基础知识概念(三)

51 怎样区别虚函数和纯虚函数?两者都有什么作用
52 存储类说明符有哪些?它们的作用是什么
53 虚函数、纯虚函数
54 引用和指针有何区别?
55 派生类构造函数执行的次序
56 类型兼容规则
57 虚基类
58 构造一个类的对象的一般顺序
59 虚析构函数
60 虚表
61 动态绑定的实现
62 数组指针
63 组合类对象的初始化次序
64 静态、动态生存期
65 常成员
66 C++程序的一般组织结构
67 编译预处理
68 函数指针
69 this指针
70 动态申请内存操作符
71 动态创建多维数组
72 智能指针
73 继承与派生概述
74 构造函数执行顺序
75 虚基类及其派生类构造函数

C++基础知识概念(四)

76 override
77 类模板
78 线性群体
79 为什么有的函数返回引用?
80 左值与右值
81 流对象与文件操作
82 预先定义的输出流对象
83 构造输出流对象
84 文件输出流成员函数
85 基本算数类型
86 指针
87 字符串输出流(ostringstream)
88 输入流相关函数
89 异常处理的语句
90 异常接口声明
91 静态和全局变量的初始化
92 默认初始化规则
93 类型转换
94 命名空间
95 命名空间定义
96 函数对象
97 构造函数为什么不能是虚函数?
98 智能指针详细介绍(C++11)
99 赋值运算符重载函数(operator=)
100 必须使用【初始化列表】初始化数据成员的三种情况
101 switch逻辑编程存在的问题
102 区分接口继承和实现继承
103 动态绑定和静态绑定
104 函数模板和重载之间是什么关系?
105 为什么选择函数模板代替宏?
106 接口与实现的分离
107 请解释函数形参的用途。形参和实参的不同点是什么?
108 作用域分辨符的用途是什么?
109 什么是资源泄露?
110 为什么异常处理技术不应该应用于普通的程序控制?

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值