C++
HeinSven
发表,是对技术最好的记忆。
展开
-
《C++Primer》学习笔记(10、泛型算法)
泛型算法: 称为算法:因为它们实现了一些经典算法的,公共接口。 称为泛型:它们可用于,不同类型的元素和多种容器类型。 概述: 大部分算法,都定义在头文件,algorithm中;在头文件,numeric中,还定义了数值泛型算法。 标准库算法find: 查找范围,[ vec.cbegin(),vec.cend() ],vec.cend()表示尾元素的后一个位置。 对于向量vector v...原创 2019-06-15 17:49:53 · 224 阅读 · 0 评论 -
C++基础芝士
基本类型的字节数: C标准中没有规定,哪个基本类型应该是多少字节数。这个与机器、OS、编译器有关。 比如,在32bits的操作系统系,VC++的编译器下int类型为占4个字节;而在tuborC下则是2个字节。 int,long 的宽度都可能随编译器而变。 但有几条铁定的原则(ANSI/ISO制订的): sizeof(shortint)<=sizeof(int) si...原创 2019-07-13 09:58:59 · 165 阅读 · 0 评论 -
《C++Primer》学习笔记(13、拷贝控制)
拷贝构造函数: 如果一个构造函数的第一个参数是:自身类类型的引用,(且任何额外参数都有默认值)。 没有拷贝构造函数,或者定义了其他构造函数,则编译器,合成拷贝构造函数。 可使用合成拷贝构造函数,阻止拷贝某类类型的对象。 在合成拷贝构造函数中,类中每个成员的类型决定了它如何拷贝,该调用拷贝构造函数就调用。 直接初始化:要求编译器使用普通的函数匹配。 拷贝初始化:要求编译器,将右侧...原创 2019-07-11 17:34:44 · 287 阅读 · 1 评论 -
《C++Primer》学习笔记(12、动态数组)
局部static对象在第一次使用前分配,在程序结束时销毁。 静态内存:保存局部static对象、类static数据成员、定义在任何函数之外的变量。static对象在使用前分配。 栈内存:保存定义在函数内的非static对象。栈对象,仅在其定义的程序块运行时才存在。 每个程序还拥有一个内存池,堆内存:存储动态分配的对象。 shared_ptr<string> p1; //可...原创 2019-07-03 11:59:28 · 173 阅读 · 0 评论 -
《C++Primer》学习笔记(14、重载运算与类型转换)
不能被重载的运算符: :: .* . ? : 重载&、|、和逗号运算符,无法保留运算对象求值顺序规则,短路求值属性。重载&&和||,无法保留内置运算符的。 重载取地址运算符和逗号运算符,会使得它们的行为,异于常态。 赋值运算符和复合赋值运算符,应该返回左侧运算对象的一个引用。 必须是成员 =、[]、()、-> 建议是成员 ...原创 2019-07-18 15:35:16 · 176 阅读 · 0 评论