![](https://img-blog.csdnimg.cn/20190927151026427.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
狄泰c++
记录狄泰唐老师 C++
蚂蚁之路
这个作者很懒,什么都没留下…
展开
-
经典问题_狄泰总结
1)int f() 与int f(void) 有区别吗? 如果有区别是什么? //面试小问题 要看用什么编译器:如果是用c编译器类型.如果是c++编译器c 语言:int f():返回值为int,参数为任意的函数,二义性int f(void):返回值为int的无参(不接受任何参数)函数,c++:返回值是int的无参(不接受任何参数)函数//c语言的默认类型在c++是不合法的,c++不允...翻译 2020-09-07 10:50:19 · 176 阅读 · 0 评论 -
c++__狄泰总结02构造与析构
#成员变量的初始值栈上创建的成员变量,成员变量初始化值为随机值堆上创建的成员变量,成员变量的初始值也是随机值静态区(全局变量)创建的成员变量,成员的初始值为0封装的概念不是全部的属性跟行为都要给人知道,将类的属性隐藏起来封装(作用于)-》引入了成员变量和成员函数 =》可以给定义访问级别类的实现细节都在.cpp,接口(类的使用方式)在,h类与类间的关系:组合继承:友元:打破关系...翻译 2020-03-29 20:11:38 · 159 阅读 · 0 评论 -
c++_狄泰总结06(异常处理)
@TOC,C语言异常处理本质:if…else…缺陷:正常代码跟异常代码结合在一起,代码膨胀且不易阅读跟维护案例1:除法函数divide(商为0)异常处理缺点:a) divide(double a, double b, int* valid)为3个参数,不同于习惯(习惯是两个参数:除数和被除数)b) 在使用前,通过对valid进行异常判断#include <iostream&g...翻译 2020-03-31 08:44:55 · 403 阅读 · 0 评论 -
c++_狄泰总结05泛型编程((函数/类模板)
泛型编程1)函数模板(C++泛型编程的一种)2)类模板类模板特化实例3)数组类模板**案例1:用最高效的方式来求 1+2+3+...+N****案例2: 数值型参数类模板**案例3:堆数组类模版构建(简易的线性表数据结构)4)智能指针类模板案例:编写智能指针类模板 ==》参照STL auto_ptr的设计STL中的智能指针(本质是对象)案例1:STL auto_ptr 使用案例QT中的智能指针案例...翻译 2020-03-31 08:45:10 · 225 阅读 · 0 评论 -
c++_狄泰总结04继承/多态
隐式类型转换(bug的重要来源):C语言支持 小类型->大类型(安全,不会发生数据截断/丢失)char(1个字节) ->short->int(4个字节)->unsigned int-> long->unsigned long->float->double==>编译器隐式转换类型带来的bug案例```cpp```cppshort s =...翻译 2020-03-31 08:44:27 · 195 阅读 · 0 评论 -
C++_狄泰总结03操作符重载
操作符重载(本质函数定义)c++的重载可以拓展操作符的功能操作符的重载是以函数的方式进行本质:用特殊形式的函数扩展操作符的功能通过关键字operator 可以定义特殊的函数operator 的本质:通过函数重载操作符语法:Type operator sign(const Type& p1, const Type& p2){ //sign是标准的 + -*/ ......翻译 2020-03-31 08:44:05 · 143 阅读 · 0 评论 -
c++_狄泰总结01c语言升级与特异
C++ 之c语言升级(c++ ==>++ 类型的增强,面向对象的加入)1)实用性:c++所有变量都可以在使用时定义 for (int i=1;i<=3 ????C语言:必须在作用域开始位置定义 int i for(i;i<3;i++)2)register: =>c语言请求编译器尽可能的将变量存在CPU内部寄存器中,而不是通过内存寻址访问,以提高效率(从寄存器取...翻译 2020-03-31 08:43:34 · 273 阅读 · 0 评论