- 博客(9)
- 收藏
- 关注
原创 C++:二项队列priority_queue
#include<iostream>#include<queue>#include<vector>#include<ctime>using namespace std;struct Data { Data(int a, int b) { x = a; y = b; } int x; int y; bool operator<(const Data& b) const { return this->x &g
2021-01-26 11:02:55
140
原创 C++学习:重载操作符
重载操作符先看一个例子#include<iostream>using namespace std;class A{public: A(int x, int y) { this->x = x; this->y = y; } A(int x); A(); ~A(); friend A operator+(A p1, A p2); friend ostream& operator<<(ostream& out, const A
2020-12-20 11:00:20
368
1
原创 C++学习:const参数修饰符
引出“传引用”参数效率上优于“传值”参数。传值参数是局部变量,被初始化成实参的值,所用调用函数时候存在对实参的两个拷贝(地址和数据?)。而传引用参数知识占位符,所以只存在对实参的一个拷贝(地址?)。类作为参数使用时,有必要使用传引用参数,而不使用传值参数,即使函数的内部不改变参数。定义在参数类型前添加修饰符const。这样的参数是常量参数。使用常量参数时,在函数声明和函数头的定义中都必须使用修饰符const,保持一致。类的对象在调用成员函数时,调用对象的行为和传引用参数很相似。应用于参数的修饰符co
2020-12-19 11:59:57
263
1
原创 C++学习:类中的友元函数
友元函数定义如果类有一套完整的取值函数,可以利用取值函数定义一个普通函数来测试相等性或其他依赖私有成员变量的计算。这样虽然能间接访问私有成员变量但效率堪忧。类的友元函数不是这个类的成员函数,而是一个“友好”的函数,他能像成员函数那样访问类的私有成员。在类定义中声明友元函数只需在函数声明前添加关键字friend,放在public区、private区均可。.注意,友元函数不是成员函数,它本质上仍然是普通函数,在继承中,友元函数不被继承。故,友元函数在定义时,无需包括限定符 “类名称::”,调用时也不用原点
2020-12-19 11:05:19
744
1
原创 C++学习:多态性
概述多态性是指为一个函数名关连多种含义的能力。具体来说,多态性指的是通过名为**“晚期绑定”**的一种特殊机制来为函数名称关联多个含义。多态性是面向对象编程的核心概念之一。晚期绑定这里先举一个例子来,定义一个基类Figure类,基类中有个成员函数center,作用是将一个图形放在界面中心,具体实现是先调用删除函数,再在中心位置画图形。然而Figure类中含有许多派生类,比如说Circle类、Rectangle类,派生类对从基类中继承的draw函数进行重定义。但是为派生类调用center函数时,cent
2020-12-04 14:09:33
192
原创 C++学习:继承中的派生类
文章目录继承概述派生类定义派生类中的构造函数派生类实现时注意事项protected限定符重定义成员函数访问重定义的基函数继承细节不继承函数派生类中的拷贝构造函数和赋值操作符派生类中的析构函数继承概述面对对象编程(OOP)是一种强大编程方式,提供了“继承”这种抽象的方式,这意味者,可以先定义并编译常规形式的类,再定义那个类的具体版本,并继承前一个类的所有功能。继承就是基于一个类(称为基类)创建新类(派生类)的过程。例如类B从类A继承而来,也可以说A是父类,B是子类。举一个例子来说,先定义一个基类Emp
2020-12-02 11:53:42
443
原创 c++学习:自由存储
前言个人理解来说,c++中的自由储存就像是手机中的运行内存一样。当打开一个APP时,其实就是向运行内存申请一块可以随时改变大小的内存,再结束使用后,需要在后台将APP结束运行,释放内存。否则,手机运行起来就会卡顿。由于C++不会自动删除用new 申请的内存,故需要手动delete 内存,否则在一次程序运行过程中,自由内存完全使用,将无法申请新的内存,程序运行就会出错。new操作符的使用由来:简单的指针应用一个简单的例子:例一:int main(){ int a = 10; int* p =
2020-11-28 12:18:36
218
原创 一个简单的c++小游戏——2048
一个简单的c++小游戏——2048代码话不多说,代码如下:#include<iostream>#include<vector>#include<ctime>#include<cstdlib>using namespace std;class Game_2048{public: Game_2048(); ~Game_2048(); void introduction(); bool judgeOver();
2020-11-27 20:17:02
6431
4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人