![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
unclejimbo
这个作者很懒,什么都没留下…
展开
-
c++primer学习笔记1 - 变量和基本类型
1 整型变量越界(1) unsigned类型会与范围求模;(2) signed类型基本同上,个别编译器有例外(测试g++, vs2012同上);2 浮点类型(1) 浮点类型的存储方式为:符号位+指数位+尾数位; 详见:维基百科 - 浮点数;(2) 一般使用double类型,float类型精度不足;(3) 注意,浮点数为近似数,适用于科学计算,不适用于精确计算;原创 2014-01-24 22:49:21 · 533 阅读 · 0 评论 -
c++primer学习笔记2 - 标准库类型
1 String类型(1) string.size()的返回值类型为string::size_type,而不是int,不要把size的返回值赋给一个int变量,可能溢出; 实际上很多库类型size操作的返回值类型都是size_type类型,这是一种类似unsigned int的类型; 同样在进行索引时索引值也是size_type类型的;(2) string类型的原创 2014-01-26 23:26:45 · 507 阅读 · 0 评论 -
c++primer学习笔记3 - 数组和指针
“现代C++程序应尽量使用vector和迭代器类型,而避免使用低级别的数组和指针。设计良好的程序只有在强调速度时才在类实现的内部使用数组和指针。”1 数组(1) 字符串字面值以空字符结尾;(2) 数组下标的正确类型是size_t;2 指针(1) 指针与引用a. 引用必须初始化,而指针不必,故指针使用时必须检查是否为空;b. 引用一旦初始化即与对象绑定,而指针可改变指向的原创 2014-02-04 21:45:37 · 502 阅读 · 0 评论 -
c++primer学习笔记4 - 表达式和语句
1. 表达式(1) 使用前自增操作符,工作量更小;(2) (*p).foo == p->foo;(3) 悬挂指针 未初始化或者delete后的指针,未指向明确地址,成为野指针,使用将导致内存错误,正确做法为初始化或在delete后立即置指针为0;(4) 强制类型转换 cast-name(expression); cast-name包括sta原创 2014-02-05 00:33:59 · 501 阅读 · 0 评论 -
c++primer学习笔记5 - 函数
1 返回值(1) 函数不能返回另一个函数或者内置数组类型,但可以返回指向函数的指针,或指向数组元素的指针的指针;(2) 不要返回局部对象的引用和指针;2 参数传递(1) const引用形参的用途: 避免复制; 普通非const引用形参在使用时不灵活,既不能用const对象初始化,也不能用字面值或产生右值的表达式实参初始化;(2) main函数的参数:原创 2014-02-07 15:37:40 · 514 阅读 · 0 评论 -
c++primer学习笔记 - 容器和算法
1 顺序容器(1) 避免存储end操作返回的迭代器,考虑下面的代码: vector iterator first = v.begin(), last = v.end();while(first != last){ first = v.insert(++first, 42); //insert后last已失效 ++first;}(2) 适配器的作用相当于一原创 2014-02-08 21:21:16 · 532 阅读 · 0 评论