![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
ruo_bing
这个作者很懒,什么都没留下…
展开
-
声明类和定义对象
类的声明class Date{private: //声明以下成员为私有 int hour; int minute; int second;public: //声明以下成员为公有 void display() { cout << hour << endl; c...原创 2018-08-11 18:53:04 · 3547 阅读 · 0 评论 -
const的使用总结
const修饰符在C语言中有:#define MAX 20这种方式来定义变量,c++中用const来定义变量和#define的作用相同,消除了#define的不安全性(操作符优先级引起的不安全问题)。且c++中一些数据是共享的,破坏了数据的安全性,常类型的引入,既保证了数据共享,又防止数据被修改,常类型的值在程序运行期间是不能被改变的。const和指针使用分为三种:const char ...原创 2018-09-21 18:02:58 · 179 阅读 · 0 评论 -
运算符重载简单
运算符重载为了增强程序的可读性,C++支持运算符重载 。运算符重载的特征为:operator + 合法的运算符 构成函数名(举例:重载&lt;运算符的函数名:operator&lt; )。重载运算符以后,不能改变运算符的 优先级/结合性/操作数个数{public : Date() {} // 拷贝构造函数 Date (const Date&amp; d) {...原创 2018-09-21 17:05:43 · 131 阅读 · 0 评论 -
c++虚函数与多态
夫人们佛原创 2018-10-03 12:03:53 · 1372 阅读 · 1 评论 -
继承(下)----虚继承
单继承&amp;amp;多继承一个子类只有一个直接父类时称这种继承关系为单继承。一个子类有两个或者两个以上的父类时称这种继承关系为多继承。菱形继承 ---------特殊的多继承有很大的缺点:二义性如上图,D中会有两份相同的数据,本质都来源于A,在调用派生类里面的这个数据时就会出现问题时就会出现二义性问题。数据冗余D有两个父类,则数据会很多,甚至有重复的,造成数据冗余解决办法一:...原创 2018-10-02 18:01:39 · 2018 阅读 · 0 评论 -
继承(上)
继承继承概念:一个类中包含成员变量和成员函数,不同的类它们的数据和函数往往是不同的,但是有时候两个类的内容基本相同或者有一部分相同,例如以下两个类:第一个类:class student{ public: void display(){ cout&amp;amp;lt;&amp;amp;lt;num&amp;amp;lt;&amp;amp;lt;endl; cout&am原创 2018-10-01 18:34:31 · 630 阅读 · 0 评论 -
C语言和c++中的static总结
C语言中的staticstatic修饰全局变量,改变了变量的变量的链接属性,使得这个全局变量只能在本文件中访问static修饰局部变量,使其生命周期变长,只在该作用域中使用,离开该作用域。该变量没有被销毁,还在内存中,直到程序运行结束才释放,被static修饰的局部变量放在静态区存储区static修饰函数,改变了函数的链接属性,只能在本文件中调用,不能被其他文件访问注意:静态变量可以多...原创 2018-09-20 00:00:02 · 2166 阅读 · 0 评论 -
c++动态内存分配
动态内存管理C语言的动态内存申请malloc,calloc,realloc的不同内存泄漏?如何避免?怎么检测?如何检测内存是否泄漏?int*p = (int*)malloc(sizeof(int)); //既要强转,又要手动计算大小if(NULL==p) ,还要判空但c++中则没有上述存在的问题c++中的动态内存new /delete动态管理对象(例如 new int )new/d...原创 2018-09-19 01:06:00 · 170 阅读 · 0 评论 -
String类和深浅拷贝
关于运算符重载概念: 可以重载的,不可以重载的 常见的重载运算符 const修饰的常函数,常变量,static深浅拷贝以及strin类的相关操作继承概念:一个类中包含成员变量和成员函数,不同的类它们的数据和函数往往是不同的,但是有时候两个类的内容基本相同或者有一部分相同,例如以下两个类:第一个类:class student{public:v...原创 2018-09-19 00:19:57 · 188 阅读 · 0 评论 -
引用
static人们希望能有一个或者几个数据是一个类所有的对象共有,比如学生属性,除了包含自身信息,成绩等,还希望拥有班上学生平均成绩,这个平均成绩就是每个对象(学生)拥有的,不单单只属于某个学生的属性。可以把平均成绩设置为全局变量,但不安全,且破坏类 的分装性,所以引入静态成员的概念。static可以修饰变量和函数 改变了生命周期class stu{public:static v...原创 2018-09-17 16:45:39 · 167 阅读 · 0 评论 -
构造函数,析构函数,拷贝构造函数
类有六个默认的成员函数,是构造函数,析构函数,拷贝构造函数,赋值操作符重载,取地址操作符重载,const修饰的取地址操作符重载,接下来,介绍前三种成员函数析构函数析构函数的作用是初始化对象的数据成员,其函数名和类名相同代码如下:class Time{public: Time(int h , int m , int s ); //带有默认参数的构造函数 //Ti...原创 2018-08-12 21:43:51 · 309 阅读 · 0 评论 -
内置函数和this指针
内置成员函数调用函数需要一定的时间和空间开销(栈帧),函数调用如下: 如图可知在调用函数时需要转出去调用函数,那么则需要记录下当时有关信息,调用完毕后在返回,就会浪费大量的时间与空间,从而降低执行效率 c++提供了一种高效的方法,在编译时将所调用的函数代码直接嵌入到主调函数中,不用将流程转出去,这种函数叫内置函数,用inline声明.成员在类内定义,默认为内置函数,可以省略in...原创 2018-08-11 19:54:29 · 192 阅读 · 0 评论 -
类与结构体的区别
类声明class Date{private: int hour; int minute; int second;public: void display() { cout << hour << endl; cout << minute << end...原创 2018-08-11 18:58:01 · 379 阅读 · 0 评论 -
智能指针
c++面试重点:继承,多态,智能指针(什么是RAII,内存泄漏问题,代码实现)1.** 为什么要有智能指针?**最重要的一个作用就是防止内存泄漏,(什么是内存泄漏?申请的空间没有释放。内存泄漏是指针丢了还是内存丢了?指针,通过指针可以找到这块内存,然后可以进行释放)所以,普通指针丢了会导致内存泄露的问题。另外一个作用就是解决异常安全问题,异常导致执行流乱跳,可能就会直接忽略释放动态内存的...原创 2019-02-16 20:52:17 · 135 阅读 · 0 评论