c++基础
云瑶八千境
python新手
展开
-
1、c和c++的区别
1.输入输入、引用头文件:cout<< cin>>引用传参,引用不占内存,可以提高效率2.函数:内联,重载,缺省inlineinline void test();内联函数用来减少程序跳转时间,不能用循环,递归,否则优化为普通函数inline 函数在执行时候直接替换调用的函数,减少了...原创 2019-04-12 15:42:30 · 205 阅读 · 0 评论 -
11.模板
模板(template)作用:让程序员写和类型无关的代码 类型作为参数传递进去template<class T>template<typename T> template <class T> T test(T s) {s += 1; return s;} template<typename T> T dj(T s) {} ...原创 2019-04-16 19:03:38 · 210 阅读 · 0 评论 -
10.异常
复习 文件流:fstream file; // file.open(“文件路径”,打开方式)file.close();get put //字符的读写getline 读取一样内容cin.get()read write //读写二进制文件的操作 字节直接作为单位ios —>ifstream ofstream异常处理捕获异常#include<io...原创 2019-04-12 15:50:55 · 183 阅读 · 0 评论 -
9.文件操作
带有纯虚函数的类,是一个抽象类,抽象类没法定义对象文件操作c语言文件操作,全部围绕文件指针进行C++使用文件对象,对文件进行操作i–inputo ------output#include <iostream>#include<fstream>int main(){ std::cout << "Hello World!\n...原创 2019-04-12 15:50:11 · 223 阅读 · 0 评论 -
8.多态
子类在定义对象时候,会调用子类的构造函数(子类的构造必须调用父类的构造)虚继承 用来解决菱形继承问题,一个父类的指针或引用,可以指向指向子类对象,但是调用这个指向子类对象的父类指针进行访问子类对象时候,依然只能访问父类成员一般用作传参数要想用父类指针访问子类中新写的成员,必须使用虚函数 vfptr (虚表)虚函数使用过程:通过父类指针/父类引用---->找到父类虚标...原创 2019-04-12 15:49:19 · 125 阅读 · 0 评论 -
7.继承
1.继承一个class,会生成默认构造,默认解析,默认拷贝构造,重载=继承:会继承父类所有成员,继承可以制定继承方式(访问控制),有public,project,private,继承方式影响继承后的属性的访问权限继承:直接继承父类成员修改父类成员权限/在子类定义同名成员,隐藏父类成员定义新的变量和新的函数权限:私有:对外部(包含子类)都是不可访问受保护:对外...原创 2019-04-12 15:48:30 · 166 阅读 · 0 评论 -
6.运算符重载
1.运算符重载运算符本质:函数操作数:函数的参数运算符:函数的名字运算结果 :返回值#pragma onceclass num{ int x;public: num(); num(const num& other); // 拷贝构造的形参,必须是引用,可以不加const ~num(); num operator+(num& b); // 运算符重...原创 2019-04-12 15:47:51 · 198 阅读 · 0 评论 -
5.拷贝构造
1.拷贝构造也是构造函数,参数是同类的对象使用同类型对象进行初始化,传参引用拷贝构造一般使用const修饰,限定不能被修改一个函数有const,和没有const,也可以构成重载void fun();void fun() const;const 变量不构成重载,const 引用可以构成重载;char * 可读可写const char * 可读不可写const...原创 2019-04-12 15:47:07 · 128 阅读 · 0 评论 -
4.友元
友元友元函数#pragma one // 只导入一次class CHero{ int hp; int mp; public: CHero(); ~CHero(); friend void changeHeroHp(CHero & h); friend void changeHeroMp(CHero & m); publ...原创 2019-04-12 15:46:18 · 122 阅读 · 0 评论 -
3.面对对象,构造解析
1.类是私有的结构体,结构体是公有的类publicprivateprojectconst 修饰限定不能修改static 静态成员1.修饰据局部变量,局部变量的生命周期与整个程序的执行期相同,适用范围在局部2.修饰全局变量 生命周期与整个程序的执行期相同,适用范围仅限与单文件3.修饰普通函数 这个函数只能在本文将被使用,其他文件是不可见的4.类中的数据成员用static修饰,...原创 2019-04-12 15:44:46 · 110 阅读 · 0 评论 -
2.命名空间
命名空间1. 开放命名空间 ,不安全using namespace std;cin<<ss;普通函数作用域为全局命名空间一般以开发团队命名2.从命名空间导入函数,较为安全using namespace std::cin;cin<<ss;3.直接使用命名空间+函数,最安全std::cin<<ss;// 使用文件的其他命名空间的变量和...原创 2019-04-12 15:43:40 · 220 阅读 · 0 评论 -
12.end
模板(template)作用:让程序员写和类型无关的代码 类型作为参数传递进去template<class T>template<typename T> template <class T> T test(T s) {s += 1; return s;} template<typename T> T dj(T s) {} ...原创 2019-04-16 19:04:39 · 134 阅读 · 0 评论