![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++ 基础
短发大美妞
这个作者很懒,什么都没留下…
展开
-
C++ 要点总结 -- 指针与引用
指针和引用主要有以下区别: 引用必须被初始化,但是不分配存储空间。指针不声明时初始化,在初始化的时候需要分配存储空间。 引用初始化后不能被改变,指针可以改变所指的对象。 不存在指向空值的引用,但是存在指向空值的指针。 注意:引用作为函数参数时,会引发一定的问题,因为让引用作参数,目的就是想改变这个引用所指向地址的内容,而函数调用时传入的是实参,看不出函数的参数是正常变量,还是引用,因此可能引...转载 2018-09-12 15:03:08 · 269 阅读 · 0 评论 -
C++ 重点知识梳理(六) -------- 编译和链接
八、编译和链接? 8.1 动态链接库和静态链接库的区别? 用今天的眼光来看,动态链接库节约内存这个优点越来越不重要了,特别是在服务器上:a)、现在PC的内存都很大,指令占用那一点空间已经微不足道了;b)、由于动态链接库冲突等问题,越来越多的服务器应用更倾向于把所有用到的环境文件用docker打包,这样一来占用内存也不少。 相关问题: DLL hell http://blog.csd...转载 2018-09-14 20:06:05 · 135 阅读 · 0 评论 -
C++重点知识梳理(六) -------- 内存管理
七、内存管理 7.1 new与malloc的区别,delet和free的区别?内部实现? new 与 malloc的区别: new 是运算符,malloc是库函数 new会调用构造函数,malloc只申请内存 new返回指定类型的指针,malloc返回void指针 new自动计算所需的内存大小,malloc需要手动设置空间 new可以被重载 new的内部实现: 7.2 ...转载 2018-09-14 20:03:36 · 285 阅读 · 0 评论 -
C++ 重点知识梳理(五) --------- 泛指类型
六、泛型编程 6.1 使用模板的优点和缺点? 优点: 在一些场景可以避免重复代码 有些问题难以使用OO技巧(如继承和多态)来实现,而使用模版会很方便 template classes更加的类型安全,因其参数类型在编译时都是已知的。 缺点: 一些编译器对template支持不好。 编译器给出的有些出错信息比较晦涩。 为每种类型都生成额外的代码,可能导致生成的exe膨胀。 使用tem...转载 2018-09-14 19:57:28 · 232 阅读 · 0 评论 -
C++ 重点知识梳理(四) -------- 面向对象
五、面向对象 5.1 面向对象的三大特性 三大特性:封装,继承,多态 封装:封装是实现面向对象程序设计的第一步,封装就是将数据或函数等集合在一个个的单元中(我们称之为类)。封装的意义在于保护或者防止代码(数据)被我们无意中破坏。 继承:继承主要实现重用代码,节省开发时间。子类可以继承父类的一些东西。 多态:同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。分为编译时多态...转载 2018-09-14 19:52:21 · 998 阅读 · 0 评论 -
C++ 重点知识梳理(三) -------- 类型转换、指针
三、类型转换 3.1 四种类型强制转换 dynamic_cast:该转换符用于将一个指向派生类的基类指针或引用转换为派生类的指针或引用。 const_cast:最常用的用途就是删除const属性。 static_cast:static_cast本质上是传统c语言强制转换的替代品,比C类型转换更严格, 该操作符用于非多态类型的转换,任何标准转换都可以使用他,即static_cast可以把in...转载 2018-09-14 19:50:38 · 216 阅读 · 0 评论 -
C++重点知识梳理(二) ----- 语法问题
二、语法问题 2.1 a++ 与 ++a的区别 a++ 返回加之前的值,++a返回加之后的a变量 a++返回的是一个临时变量,是右值,无法赋值;++a返回的是变量a,是左值 2.2 switch语句 switch语句的表达式必须是整型int , char, short等。 2.3 函数调用过程 http://www.cnblogs.com/biyeymyhjob/archive/201...转载 2018-09-14 19:47:42 · 197 阅读 · 0 评论 -
C++ 重点知识梳理 (一) --------- 重点关键字及其用法
该文章的要感谢博主:csdn_chai 本文总结一下C++面试时常遇到的问题。C++面试中,主要涉及的考点有 关键字极其用法,常考的关键字有const, sizeof, typedef, inline, static, extern, new, delete等等 语法问题 类型转换 指针以及指针和引用的区别 面向对象的相关问题,如虚函数机制等 泛型编程的相关问题,如模板和函数的区别等...转载 2018-09-14 19:45:52 · 810 阅读 · 0 评论 -
C++ 中的虚函数和虚函数表
改写转载博主的分析真的是太透彻了:虚函数表的详细解析 C++的虚函数(Virtual Function)是通过一张虚函数表(Virtual Table)来实现的。简称为V-Table。在这个表中,主要是一个类的虚函数的地址表,这张表解决了继承、覆盖(override)的问题,保证其能真实的反应实际的函数。这样,在有虚函数的类的实例中这张表被分配在了这个实例的内存中,所以当我们用父类的指针操作一个...转载 2018-09-12 23:26:20 · 289 阅读 · 0 评论 -
C++ 重点知识梳理(八) -------- 实现函数和类
九、实现函数和类 9.1 char *strcpy(char *dst, const char *src); http://blog.csdn.net/yangquanhui1991/article/details/51804600 char *strcpy(char *dst, const char *src); 返回dst的原始值使函数能够支持链式表达式:strlen(strcpy(str...转载 2018-09-14 20:11:13 · 162 阅读 · 0 评论