初学C++
Ruoji555555
这个作者很懒,什么都没留下…
展开
-
2017-4-28 C++笔记 (第三章 字符串、向量和数组)
C++第三章笔记原创 2017-04-28 21:55:15 · 267 阅读 · 0 评论 -
第十四章 重载运算与类型转换
第十四章 重载运算与类型转换 重载运算符名字由operator和其后要定义的运算符号共同组成。 一元运算符有一个参数,二元运算符有两个参数,如果是类成员函数,则有一个隐式参数,显式参数要少一个。规则不应该被重载: 无法保留求值顺序(& | ,) ; 无法保留短路求值属性(&& ||);还有逗号和取地址符(, &)如果有operato...原创 2018-02-19 18:58:46 · 347 阅读 · 0 评论 -
第十三章. 拷贝控制
拷贝赋值与销毁拷贝构造函数拷贝赋值运算符析构函数三五 法则default阻止拷贝拷贝控制和资源管理交换操作swap对象移动右值引用移动构造函数移动赋值运算符注意事项拷贝赋值与销毁 类中的五中特殊成员函数: 拷贝构造函数、 拷贝赋值运算符、移动构造函数、移动赋值运算符、析构函数。 称这些操作为 拷贝控制操作。拷贝构...原创 2018-02-19 18:58:27 · 390 阅读 · 0 评论 -
第十二章、动态内存与智能指针
智能指针内存分类智能指针分类引用计数的实现new deleteshared_ptrunique_ptrweak_ptr动态数组allocator类智能指针内存分类静态内存 用来保存局部static的对象。栈内存 保存函数内部的非static对象。堆内存(自由空间) 用来动态分配内存。 (new | delete)智能指针原创 2018-02-02 17:14:17 · 403 阅读 · 0 评论 -
第十一章、关联容器
关联容器关联容器类型用法insert函数erase函数下标操作下标操作和insert的区别查找操作特点pair类型无序容器哈希map unordered_ map和map的区别 关联容器中的元素是按关键字来保存和访问的。 而顺序容器中的元素是按他们在容器中的位置来顺序保存和访问的。类型按关键字有序保存: map:原创 2018-02-02 17:13:07 · 201 阅读 · 0 评论 -
第十章、泛型算法
大多数算法定义在头文件algorithm中, 在头文件numeric中定义了一组数值泛型算法(如equal)。只读算法写容器的算法排序算法stable_sort和sort的区别查找lambda C11参数绑定插入迭代器流迭代器反向迭代器泛型算法结构分类方式算法命名规则特定容器算法只读算法findfind(vec.b原创 2018-02-02 17:12:36 · 166 阅读 · 0 评论 -
2017-5-18.19.20 C++primer笔记
c++primer笔记 加入光荣的进化吧 第六章! 函数对于让函数返回多个值的具体操作:定义一个新的数据类型,包含多个参数。给函数传入额外的引用实参,令其保存额外的参数,隐式的返回。const形参和实参当用实参初始化形参时,会忽略掉顶层const。 - 形参有顶层const时,传给他常量对象或者非常量对象都是可以的。不能用字面值初始化一个非常量引用int &r4=42;原创 2017-05-21 10:43:34 · 286 阅读 · 0 评论 -
2017-5-17 C++ primer 笔记 (static和extern的区别和用法)
c++primer笔记 加入光荣的进化吧 第六章! 函数局部对象 名字有作用域, 对象有生命周期。 名字的作用域是程序文本的一部分,名字在其中可见对象的生命周期是程序执行过程中该对象存在的一段时间。形参和函数体内部定义的变量统称为==局部变量==。 仅在函数的作用域内可见,同时局部变量还会==隐藏==在外层作用域中同名的其它所有声明!局部静态对象! 可以使局部变量的生原创 2017-05-18 18:05:13 · 1155 阅读 · 0 评论 -
2017-5-9 C++笔记
c++primer笔记 加入光荣的进化吧vector容器vector的初始化 引用不可以成为vector的元素,因为其不是对象。(vector的元素只能是对象。) 对象:分配了空间、 并且有数据类型。可以用==花括号==初始化每一个值可以用==括号== 指定元素的个数或相同的元素值只能直接初始化,不能拷贝初始化。(++vector之间可以互相拷贝,但类型要一致++)(++类型即为定原创 2017-05-09 22:52:34 · 235 阅读 · 0 评论 -
2017-5-27 C++primer笔记
第七章 类 回家第一晚定义在类内部的函数是默认内联的。定义在类内部的构造函数(用冒号形式写的) 最后要加一个空的大括号~含有指针数据成员的类一般不宜使用默认的拷贝和复制操作。 如果类的数据成员都是内置类型的(意思是定义在类的内部?),则不受干扰。要把类的成员函数定义成内联函数 有二种途径把函数定义放在类的内部(默认内联)把函数定义放在类的外部,并在定义之前显示的指定inline内联函数原创 2017-05-28 01:30:16 · 246 阅读 · 0 评论 -
2017-5-15 C++ primer 笔记
c++primer笔记 加入光荣的进化吧 位运算符写的是啥玩意。。sizeof运算符返回一条表达式或一个类型名字所占的字节数。 满足右结合律返回值是一个size_t类型。size并不计算器运算对象的值 eg sizeof p ; 表达式从右向左组合,先 *p 但是size并不会计算 p的值, 所以该语句无意义。对数组执行sizeof运算会得到整个数组所占空间的大小。原创 2017-05-16 00:07:58 · 193 阅读 · 0 评论 -
2017-5-21.22 C++primer笔记~
c++primer笔记 加入光荣的进化吧 第六章! 函数将函数指定为(内联函数 inline),将它在每个调用点上【内联的展开】,该说明只是向编译器发出一个请求,编译器可以选择忽略这个请求。内联的机制用于优化规模较小,流程直接,频繁调用的函数。constexpr函数是指能用于常量表达式的函数,函数的返回值类星和所有形参的类型必须是‘字面值类型’: 算数、引用、指针。 并且函数体内原创 2017-05-23 00:04:20 · 554 阅读 · 0 评论 -
2017-5-11 C++primer笔记
c++primer笔记 2017-5-11 加入光荣的进化吧 成员访问运算符string s1 = "a string";auto n=s1.size();n=(*p).size(); ///*p必须加括号。 先解引用n= p->size; //用-> 可以免去加括号的麻烦><点运算符和箭头运算符都可用于访问成员。 点运算符可以获得==类对象==的一个成员。->把左原创 2017-05-12 09:26:52 · 223 阅读 · 0 评论 -
2017-5-10 c++ primer笔记
c++primer笔记 加入光荣的进化吧数组!标签: 数组与vector不同的是,数组的大小确定。所以对于某些特殊的应用来讲,程序运行时性能较好。在不清楚元素的个数时,使用vector!这里说的“数组” 不仅是int a[10],也包括了string a[10];int/string [数组名字][维度] ; 维度只能用常量const表示类似于内置类型的变量,当定义了内置类型的数组时原创 2017-05-11 01:06:46 · 307 阅读 · 0 评论 -
第十五章 .面向对象的程序设计
基类和派生类类型转换与继承虚函数抽象基类访问控制和继承类作用域构造函数与拷贝控制容器与继承 面向对象程序设计的核心思想是数据抽象、继承、和动态绑定。基类和派生类派生类包括自己定义的对象和继承自基类的对象。这些对象不一定连续存储。因为派生类对象含有基类的对象,所以可以把派生类当做基类使用(通过指针或引用)。派生类必须使用基类的构造函数...原创 2018-02-19 18:59:17 · 411 阅读 · 0 评论