![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
斯立扑
这个作者很懒,什么都没留下…
展开
-
标准C++07
一、什么是模板模板是C++中自动生成代码的技术。二、为什么使用模板问题:实现一个通用的排序算法。C语言:通过回调函数实现,使用者调用麻烦。C++语言:函数重载,需要为多种类型实现一个第一版本,还会导致代码段增加。C/C++语言:借助宏函数实现,类型检查不严格,频繁使用还会增加代码段。由于以上原因C++之父在C++中实现了模板技术,既能技术多种类也能兼顾严格的类型检查,能让程序员编程专注思考业务逻辑而不用关系数据类型。三、函数模板1、函数模板的定义template <typename原创 2020-10-07 10:16:56 · 179 阅读 · 0 评论 -
标准C++06
一、虚析构当使用delete释放一个父类指针时(父类引用),不管指向的是父类对象还是子类对象,都只会调用父类的析构。当使用多态特性时,如果子类中有需要析构释放的资源,为了避免内存泄漏就需要把父类的析构函数设置为虚函数。当父类的析构函数为虚函数时,子类的析构会自动覆盖它而不用比较它们的名字,当通过父类或引用来释放子类对象时会自动调用子类的析构函数。二、文件流C++把对文件的操作封装到了类中。ifstream 输入文件流ofstream 输出文件流fstream 输入/输出文件流1、打开文件原创 2020-10-07 10:14:16 · 117 阅读 · 0 评论 -
标准C++05
一、类的继承1、在解决问题时,先查看当前现在的类能否解决部分问题,如果可以则把旧的继承后再拓展来缩短解决问题的时间,降低解决问题的难度,继承就是为了让代码能够重复使用。2、当面临一个复杂问题时,可以先把问题进行分层,每层的类解决一部分问题,然后通过继承进行汇总,最终得到一个解决问题的类。二、继承的基本语法1、继承表一个子类可以继承多个父类,每个类的继承方式可以不同。class 子类:继承方式 父类1,继承方式 父类2,… //继承表{}2、继承方式public 公有继承pri原创 2020-10-07 10:11:48 · 102 阅读 · 0 评论 -
标准C++04
一、运算符重载C++中是运算符当作函数来看待,所以C++中的运算符可以重载,这样可以让类对象支持运算符,对类对象进行定制化操作。例如:string类就支持很多运算符来代替标准库中的函数。= strcpy+= strlen==|!=|>=|<= strcmp二、双目录运算符重载假如:Test a,b; a+b操作可以调用两种函数Test的成员函数:a是触发者,b是参数Test operator+(cosnt Test& b) const{return a+b; //原创 2020-09-19 10:37:50 · 197 阅读 · 0 评论 -
标准C++03
类的成员变量存储在每个类对象中(每个对象一份),成员函数存储在代码段中(所有的对象共享一份),那么成员函数是如何区分调用它的是哪个对象?答:与C语言的解决方案一样,把对象的地址传递给成员函数,这样成员函数就知道是哪个对象在调用它,与C语言不同的是该操作是隐藏,编译器帮我们自动完成的,也就是类的成员函数都隐藏着一个参数,这个参数就是this指针。this指针:指向访问成员函数对象的指针,默认是隐藏的,但也可以显示使用。对象调用成员函数时会自动计算它的内存地址传递给成员函数中的this,而在成员函数调用原创 2020-09-19 10:33:39 · 673 阅读 · 0 评论 -
标准C++02
一、面向对象与面向过程:面向过程:关注解决问题的步骤,算法。面向对象:关注的是谁能解决问题,需要什么样的数据(成员变量),具备什么样的功能(成员函数)。抽象:找出或相像出一个能够解决问题的"对象",通过研究观察对象,找出c"对象"解决问题所必须的数据(属性)、功能(技能)。封装:把抽象的结果归纳为一个结构,然后实例化出结构变量,然后结构变量中的数据和功能相互作用最终解决问题。继承:在封装结构时,可以先分析结构需要的数据和功能现有的结构是具备,如果具备,可以继承现有的结构的代码,达到代码复用的目的。原创 2020-09-19 10:31:05 · 345 阅读 · 0 评论 -
标准C++01
C与C++的区别int n(int as,bs,int n){}一、C++介绍本贾尼·斯特劳斯特卢普,于1979年4月份贝尔实验室的本贾尼博士在分析UNIX系统分布内核流量分析时,希望有一种有效的更加模块化的工具。1979年10完成了预处理器Cpre,为C增加了类机制,也就是面向对象,1983年完成了C++的第一个版本,C with classes也就是C++。C++与C的不同点:1、C++完全兼容C的所有内容2、支持面向对象编程思想3、支持运算符、函数重载4、支持泛型编程、模板5、原创 2020-09-19 10:25:32 · 109 阅读 · 0 评论