随笔分类 - C++基础
摘要:[TOC] 内存使用 一般情况下有三种内存,静态内存用于保存局部static对象、类static数据成员以及函数外被定义的变量,这种对象或者变量在使用之前被分配,程序结束时销毁;栈内存用于保存在函数内的非static对象,栈对象只在程序块运行时存在,程序流离开时销毁;以及自由空间,也叫堆,用来保存动
阅读全文
摘要:[TOC] 关联容器和顺序容器的不同 关联容器和顺序容器的根本不同之处在于, 关联容器中的元素是按关键字来保存和访问 的(比如map和set),而 顺序容器中的元素是按照在容器中的位置来顺序保存和访问 的(比如vector和string)。 顺序容器有 关联容器有 关联容器不支持和位置相关的操作,因
阅读全文
摘要:链表类型list和forward_list有独有的sort、merge、remove、reverse和unique,而通用版本的是不能用于这两个类型的,因为所要求的迭代器不同,通用版本需要迭代器支持更多的操作。 除了revrese不需要参数,其他都可以传递一个谓词。 splice是链表类型所独有的算
阅读全文
摘要:[TOC] 插入迭代器 类型和不同 用于向容器插入元素,一共有三种,back_inserter,front_insert和inserter; back_inserter需要容器支持push_back,功能就是创建一个使用push_back的迭代器, 元素插入到之后 。 front_inserter需
阅读全文
摘要:[TOC] bind作用和形式 bind用于将一个可调用对象绑定到新的可调用对象上,新对象的参数就是被绑定对象参数列表中的占位符所占据的位置的参数 其调用形式如下: bind的第一个参数为一个可调用对象,可调用对象是指可以对其使用调用运算符()的对象。 可调用对象常用的有函数、函数指针、重载了函数调
阅读全文
摘要:[TOC] 简介 lambda表达式是一个 匿名内联函数,可以定义别的函数体中 ,其形式如下: 从中可以看到,lambda 只能使用尾置返回类型 ; 尾置返回类型放在参数列表后边以 开头,然后再原来放返回类型的地方放一个auto。 结构 lambda不可缺少的部分是捕获列表capture list和
阅读全文
摘要:1.iostream处理控制台IO 1 #include<iostream> 2 #include<string> 3 using namespace std; 4 istream& Test(istream &in) { //IO对象没有拷贝或者赋值,所以形参和返回值都不能设置为流类型,通常用引用
阅读全文
摘要:列表内容assert()是一种预处理宏(preprocessor marco),使用一个表达式来作为条件,只在DEBUG模式下才有用。 对expr求值,如果expr为假,则输出信息并终止程序,反之则什么也不做。 用来检查"不会发生"的条件 。 assert的行为依赖与NDEBUG的预处理变量的状态,
阅读全文
摘要:typedef struct point { double x, y; }point; //给定两个点 point a(x1,y1),b(x2,y2); 使用反三角函数atan求斜率,原型如下 float atan( float arg ); double atan( double arg ); l
阅读全文
摘要:Paper.h Realize.h test.cpp
阅读全文
摘要:1.Target 2.Code 3.测试截图 4.测试数据 dasd 156 dad das 45 dsad da 135 das 4252 das 24 da 4 d 156 1561 616 12 1 2 1 2 3 NO1 NO2 NO3
阅读全文
摘要:1.目的: 2.代码如下: 3 . 测试截图 4.关于多态性
阅读全文
摘要:1.首先可以知道优先级规定了运算对象的组合方式,但是没有说明运算对象按照什么顺序求值。 比如: 在这里虽然f1和f2在乘法之前被调用,但是f1先调用还是f2先调用却不得而知。 2.再比如结合律 int i=0; cout
阅读全文
摘要:题目描述 对people类重载“= =”运算符和“=”运算符,“==”运算符判断两个people类对象的id属性是否相等;“=”运算符实现people类对象的赋值操作。 代码如下 #include<iostream> #include<string> using namespace std; cla
阅读全文
摘要:1. 从people(人员)类派生出student(学生)类 添加属性:班号char classNO[7];从people类派生出teacher(教师)类, 添加属性:职务char principalship[11]、部门char department[21]。 从student类中派生gradua
阅读全文
摘要:Target:定义一个车(vehicle)基类 具有MaxSpeed、Weight等成员变量,Run、Stop等成员函数,由此派生出自行车(bicycle)类、汽车(motorcar)类。 自行车(bicycle)类有高度(Height)等属性,汽车(motorcar)类有座位数(SeatNum)等
阅读全文
摘要:1.编一程序,将字符串“Hello,C++!”赋给一个字符数组, 然后从第一个字母开始间隔地输出该串(请用指针完成)。 代码如下 #include<iostream> #include<string> using namespace std; int main() { const char str[
阅读全文
摘要:/* 定义Boat与Car两个类,二者都有weight属性, 定义二者的一个友元函数totalWeight()为外部函数, 计算二者的重量和。 */ #include<iostream> #include<string> using namespace std; class Boat; class
阅读全文
摘要:实现客户机(CLIENT)类。 定义字符型静态数据成员SeverName,保存其服务器名称; 整型静态数据成员ClientNum,记录已定义的客户数量; 定义静态函数ChangeSeverName()改变服务器名称。 在头文件client.h中定义类, 在文件client.cpp中实现, 在文件te
阅读全文