![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++面向对象编程
文章平均质量分 51
封装继承多态,重载以及异常处理
weight169
这个作者很懒,什么都没留下…
展开
-
强制类型转换
查看运行结果,问题来了,指针p和指针q都是指向a变量的,指向地址相同,而且经过调试发现002CFAF4地址内的值确实由10被修改成了20,这是怎么一回事呢?为什么a的值打印出来还是10呢?其实这是一件好事,我们要庆幸a变量最终的值没有变成20!变量a一开始就被声明为一个常量变量,不管后面的程序怎么处理,它就是一个常量,就是不会变化的。试想一下如果这个变量a最终变成了20会有什么后果呢?原创 2023-03-27 10:58:18 · 1730 阅读 · 0 评论 -
设 计 模 式
比如使用继承会给程序带来侵入性,程序的可移植性降低,增加对象间的耦合性,如果一个类被其他的类所继承,则当这个类需要修改时,必须考虑到所有的子类,并且父类修改后,所有涉及到子类的功能都有可能产生故障。如果对每个类型为T1的对象o1,都有类型为T2的对象o2,使得以T1定义的所有程序P在所有的对象o1都代换成o2时,程序P的行为没有发生变化,那么类型T2是类型T1的子类型。类A通过接口I依赖类B,类C通过接口I依赖类D,如果接口I对于类A和类C来说不是最小接口,则类B和类D必须去实现他们不需要的方法。原创 2023-03-23 08:57:14 · 54 阅读 · 0 评论 -
C++ 容器list
/ const 说明 iterator适配器是只读的不能被修改it!it++)//error 只读不能修改it!it++)原创 2023-03-15 19:39:18 · 108 阅读 · 0 评论 -
C++ 多态
//虚函数。class Person{ //纯虚类(抽象类)原创 2023-03-14 16:27:17 · 49 阅读 · 0 评论 -
C++ 继承
class Derived : public Base{ //Derived 继承 Base 子类(派生类)class Derived : public Base{ //Derived 继承 Base 子类(派生类)class Derived : public Base{ //Derived 继承 Base 子类(派生类)//先执行父类的构造在执行子类构造,然后子类析构,最后父类析构。class Base{ //父类(基类)class Base{ //父类(基类)原创 2023-03-13 21:14:52 · 54 阅读 · 0 评论 -
c++ 操作符重载
【代码】c++ 操作符重载。原创 2023-03-12 16:04:21 · 79 阅读 · 0 评论 -
c++ 拷贝构造
【代码】c++ 拷贝构造。原创 2023-03-08 20:17:09 · 66 阅读 · 0 评论 -
c++ static/inline/friend
【代码】c++ static/inline/friend。原创 2023-03-08 15:33:50 · 165 阅读 · 0 评论 -
C++ 初始化列表/const
int getAge() const{ //该函数只可读不能写。在定义私有变量的时候使用引用与const时二者都需初始化,则可以通过初始化列表来初始化。Student(){ //构造函数(可以有参数)~Student(){ //析构函数(没有参数)原创 2023-03-08 11:01:26 · 94 阅读 · 0 评论 -
C++ 权限/ 构造/析构函数
【代码】C++ 权限/ 构造/析构函数。原创 2023-03-07 18:58:25 · 88 阅读 · 0 评论 -
C++/类和对象/属性和方法
类和对象:类是对象的抽象,对象是类的实例val 和 num 就是两个成员变量也就是两个对象,他们两个都是int类型也就是类C/C++的基本类型实例化对象原创 2023-03-07 18:59:26 · 450 阅读 · 0 评论 -
c++ 引用(&)/new/delete
指针:指针就是内存地址,指针变量是用来存放内存地址的变量.不同类型的指针变量所占用的存储单元长度是相同的,而存放数据的变量因数据的类型不同,所占用的存储空间长度也不同。在C++语言中,函数的参数和返回值的传递方式有三种:值传递,指针传递和引用传递.引用具有指针的效率,又具有变量使用的方便性和直观性.引用:引用不是新定义一个变量,而是给已存在变量取一个别名,编译器不会为引用变量开辟内存空间,它和它引用的变量共用同一块内存空间.实际上引用可以做的事,指针都可以做,为什么还要引用呢?原创 2023-03-07 19:05:01 · 173 阅读 · 0 评论 -
C++/函数重载/默认参数
【代码】C++/函数重载/默认参数。原创 2023-03-07 11:25:33 · 64 阅读 · 0 评论 -
cin/cout/命名空间
在使用定义为std的命名空间中某些格式例如:cin、cout 等时,需要在前面定义一个命名空间,才能使用。若没有定义命名空间,则需要加上作用域 若重复的使用某个语句时则可以定义一个命名空间 一般不定义命名空间与定义的另一个命名空间有重合,若有则不影响若命名空间的内容有重合,则需要加上只作用域原创 2023-03-07 10:20:18 · 97 阅读 · 0 评论