C++学习记录-STL-set和multiset
C++学习记录-STL-set和multiset set容器 Set的特性是:所有元素都会根据元素的键值自动被排序。Set的元素不像map那样可以同时拥有实值和键值,set的元素即是键值又是实值。Set不允许两个元素有相同的键值。 set常用API 构造函数 12set<类型>...
C++学习记录-STL-list
C++学习记录-STL-list C++中的list是一个双向链表 list常用API 构造函数 1234list<T> 名称;//默认构造方式list(开始位置迭代器,结束位置迭代器);//将区间中的元素拷贝给该容器list(数量,元素);//将n个元素拷贝给该容器list(另一个容器);//拷贝构造函数 插入删除操作 1234.push_back(元素);//尾部加入一个元素.pop_back(元素);//尾部弹出一个元素.push_front(元素);//头部插入一个元素.pop_front(元素);//头部弹出一个元素 判断修改大小操作 123.size();//返回大小.empty();//判断是否为空.resize(num,elem);//重新指定容器长度为num,如果变长,则用默认元素填充,变短则删除多余元素 数据获取 12.front();//获取第一个元素.back();//获取最后一个元素 容器反转 12.reverse();//反转.sort();//默认从大到小排序
C++学习记录-STL-queue
C++学习记录-STL-queue queue,队列,是一种先进先出的数据结构,它有一个入口,在另一端有一个出口。 队列只有队头元素允许被取用,因此queue没有迭代器,不提供遍历功能 queue常用API 构造函数 1queue<T> 名称; 存取和插入删除操作 1234.push(元素);//队尾插入元素.pop(元素);//队头移除一个元素.back();//返回最后一个元素.front();//返回第一个元素 赋值操作 用 = 可以将一个queue容器赋值给另一个queue容器 判断大小操作 12.empty();//判断队列是否为空.size();//返回容器的大小
C++实训笔记
C++实训笔记 命名空间 为了防止多人编程时出现重复的定义、函数名 命名空间的定义形式: namespace 命名空间名称{ 内容(变量,函数等) } 12345678910111213namespace my{ int a = 0; int add(int a, int b) { return a + b; } namespace mine { int b; }//命名空间里也可以套命名空间} 命名空间的使用形式: 全体展开: 1using namespace 名称 部分展开: 1using 名称::变量名/函数名等 用到的时候再取用 1int...
Qt学习记录-信号和槽机制
Qt学习记录-信号和槽机制 当某个时间发生后,比如某个按钮被点击了一下,它就会广播一个信号(signal),如果某个对象对这个信号感兴趣,那么可以使用链接函数(connect)订阅这个信号,当收到信号时,被链接的槽函数(slot)会自动被回调,这就是信号和槽机制。 图示: 语法: connect(信号发出者(对象),&信号(本质是一个函数,地址传递),信号接收者,槽函数(是一个函数,地址传递)) 示例:系统自带的信号与槽: 创建一个按钮,令其被点击时关闭窗口 1234myButton=new...
Java知识总结
数据类型扩展 整形扩展: 123int i=10;//十进制10int i2=010;//八进制,0开头,此数字表示8int i3=0x10;//十六进制,0x开头,此数字表示16 浮点数扩展: 浮点数会存在舍入误差(精度丢失),因此无法准确表示。 123float a1=0.1f;float a2=1.0/10;boolean x=(a1==a2);//x为false 因此尽量避免使用浮点数,永远不要对浮点数进行是否相等的判断 字符扩展: char类型可以强制转换为整形,其值为对应的ASCII码值 所有的字符本质还是数字 char类型使用 Unicode 编码,占两个字节 布尔类型扩展: 在c++中,true,false分别与1,0等价,在Java中不等价 转义字符: 12\t //空格\n...
GitHub学习记录9-团队协作
GitHub学习记录9 Git团队协作以及合并时的diff工具 在许多的多人组队(编程)任务、尤其是需要进行交叉修改代码中部分段落的时候,Git这样一个分布式版本控制系统的优势就体现出来,或许这也是一些人开始接触和使用Git的原因。 代码(提交)推送到远程仓库的一般方式 粗放式的提交:加入仓库协作者,即可获得直接push的权限(优点:更方便&快捷) 以Github为例,首先,仓库管理员(一般是仓库的创建者或者拥有者)先在Github上仓库的Settings页面中点击下图的Add People按钮,添加合作者: 约定大致的Commit Message(提交信息)的格式,有fix,update,merge等词语放在提交消息的开头,来大致表示这次提交的大致内容。 标准式的提交与合并:运用Pull Requests(优点:更严谨&利于把控每个版本的质量。例如Forking 工作流) (Pull Requests的基本介绍可以参阅第八章的Pull Requests和提交PR词条。) 更具体一些来说,使用的是Forking...
GitHub学习记录7-提交规范
GitHub学习记录7 Git提交规范 在团队开发中,提交要遵循相应的规范。 一个commit包含如下几个信息: commit message - 提交的内容相关描述 author & committer - 作者及提交者 changed files - 修改的文件 hash & parent - 提交内容的hash及在提交树上的位置 Commit Message 提交消息描述的是当前提交的功能相关信息,一般可以包括header,body,footer, 12345<header><BLANK LINE><body><BLANK LINE><footer> 其中header是必须的。Angular官方建议的格式如下: 1234567<type>(<scope>): <short summary> │ │ │ │ │ └─⫸ Summary in present tense. Not...
GitHub学习记录6-工作流
GitHub学习记录6 GitFlow工作流实战 在实际项目开发工作中,常常会有自测、联调、提测、线上紧急修复等多工作环节,对应可能需要本地、内测、开发、测试、生产等多环境部署代码的需求,对应每个环节会产生不同的分支。 Git-Flow⼯作流模型原理 Git-Flow模型解决什么问题? 为了解决实际项⽬中代码开发、代码测试、bug修复、版本发布等⼀系过程列严重耦合从⽽产⽣各种问题,如冲突过度、版本混乱。 Git-Flow模型⼜是如何解决上述问题的呢? 基于Git定义5种类型的分⽀,各分⽀严格定义其指责、起⽌点等,从⽽使开发、测试、发版等过程有条不紊进⾏。 Git-Flow流程图 每个角色在某个阶段需要关注的可能也就⼀两个分⽀,⽐如在开发阶段,开发⼈员只需关注⾃⼰的新功能分⽀(Feature分支);release阶段,测试⼈员和开发⼈员都只需关注Release分⽀,各⾃的职责有所差异⽽已。 Git-Flow各分⽀的说明 分⽀名称 作⽤ ⽣命周期 提交or合并 起⽌点 Feature分⽀ ⽤于某个功能的 临时分 ⽀、开发...





