摘要: 1、读取数量不定的输入数据 或者用getline代替>> 读取一行内容,保留输入的空白符,而string对象会忽略开头的空白 2、声明和定义的关系 声明:使得名字为程序所知,规定对象的类型和名字 定义:创建与名字相关的实体,申请存储空间 变量只能被定义一次,但可以有多次声明; 任何包含了显式初始化的 阅读全文
posted @ 2019-06-04 09:56 飘柔的小卷毛 阅读(130) 评论(1) 推荐(0) 编辑
摘要: C++的类型转换 1、 类型转换名称和语法 C风格的强制类型转换(Type Cast)很简单,不管什么类型的转换统统是: TYPE b = (TYPE)a C++风格的类型转换提供了4种类型转换操作符来应对不同场合的应用。 static_cast 静态类型转换。如int转换成char reinter 阅读全文
posted @ 2019-05-16 18:43 飘柔的小卷毛 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 函数模板和类模板 1、介绍 1)C++提供两种模板机制:函数模板、类模板 2)作用:使类型参数化,又称参数模板 使得程序(算法)可以从逻辑功能上抽象,将数据类型作为参数传递。 总结: 模板把函数或类要处理的数据类型参数化,表现为参数的多态性,称为类属。 模板用于表达逻辑结构相同,但具体数据元素类型不 阅读全文
posted @ 2019-05-14 19:20 飘柔的小卷毛 阅读(350) 评论(0) 推荐(0) 编辑
摘要: 纯虚函数和抽象类 下面通过一个例子来说明纯虚函数的定义方法 在这个类当中,我们定义了一个普通的虚函数,并且也定义了一个纯虚函数。那么,纯虚函数是什么呢??从上面的定义可以看到,纯虚函数就是没有函数体,同时在定义的时候,其函数名后面要加上“= 0”。 纯虚函数的实现原理 本节从虚函数表的角度来说明纯虚 阅读全文
posted @ 2019-05-11 08:49 飘柔的小卷毛 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 多态 问题引出: 如果子类定义了与父类中原型相同的函数会发生什么?(赋值兼容性原则遇上函数重写) 函数重写: 在子类中定义与父类中原型相同的函数,函数重写只发生在父类与子类之间。 父类中被重写的函数依然会继承给子类 默认情况下子类中重写的函数将隐藏父类中的函数 通过作用域分辨符::可以访问到父类中被 阅读全文
posted @ 2019-05-11 08:08 飘柔的小卷毛 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 继承 类之间的关系:包含、使用、继承 继承重要说明 1)子类继承了父类的全部成员变量和成员方法(除了构造和析构之外的成员方法) 2)子类可以拥有父类没有的方法和属性 3)父类若有带参数的函数,可以将子类作为参数传递进去) 4)子类就是一种特殊的父类,子类对象可以当作父类对象使用 (儿子至少比父亲强: 阅读全文
posted @ 2019-05-10 22:09 飘柔的小卷毛 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 1、带参数的宏 关于#define的具体用法: #define命令是C语言中的一个宏定义命令,它用来将一个宏名替换为一个字符串,该标识符被称为宏名,被定义的字符串称为替换文本。宏定义只做字符替换,不分配内存空间。 该命令有两种格式:一种是简单的宏定义,另一种是带参数的宏定义。 (1)简单的宏定义: 阅读全文
posted @ 2019-05-09 21:40 飘柔的小卷毛 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 类和对象 1、 基本概念 a)封装 概念:1、把属性和方法封装成类 2、对属性和方法进行访问控制 类成员的访问控制:C++中可以给成员变量和成员函数定义访问级别 Public修饰成员变量和成员函数可以在类的内部和类的外部被访问:完全公开 Private修饰成员变量和成员函数只能在类的内部被访问:基类 阅读全文
posted @ 2019-05-09 11:07 飘柔的小卷毛 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 1、C++对C的扩展 1)C++需要命名空间 namespace,是指标识符的各种可见范围 using namespace std;这样命名空间std内定义的所有标识符都有效(曝光),就好像它们被声明为全局变量一样。 2)C++命名空间的使用 使用整个命名空间:using namespace nam 阅读全文
posted @ 2019-04-29 21:31 飘柔的小卷毛 阅读(236) 评论(0) 推荐(0) 编辑
摘要: VS: 参考这篇博客: https://blog.csdn.net/leowinbow/article/details/86247474 在导入一些库的时候注意保留原格式.hpp文件(保留linux写法) 例如 Qt: 在.pro文件添加这句话就好 INCLUDEPATH += E:\boost\b 阅读全文
posted @ 2019-04-19 11:13 飘柔的小卷毛 阅读(330) 评论(0) 推荐(0) 编辑