C++ 墙角知识 02
来源:互联网 发布:怎么提升自己 知乎 编辑:程序博客网 时间:2024/05/01 15:07
如果一个表达式已经有 size()函数,就不要再使用int的变量了, 可能会引起错误。
因为 int可能是一个负数, 而会转化为一个无符号的数,就非常大。
两个string对象相加
s1+s2
字面值可以和string对象相加 s1+”nihao”
但是两个字面值不能直接相加。
如果有多个连加, 注意 加号 两侧至少有一个是 string对象。
如 s1 + “aaa” +s2;
s1+”aaa” 的结果还是一个string对象
为了与C兼容, 字面值并不是string对象,而是 C的字符串。末尾是\0
C++在兼容C头文件的时候, name.h 都变成了 cname ,去掉了后面的 .h 而在文件名前加了c,说明这是一个C语言的标准库头文件。
而且在cname中定义的名字 ,属于命名空间std ,name.h的则不然。推荐使用 cname的头文件。
顺序存储结构 有 下标运算符。
任何时候,使用下标访问,都要保证那个位置有值。
vector
同类型对象的集合
#include << vector >>
using std::vector;
vector是一个类模板
实例化
vector是模板,而不是类型, 想要 生成类型必须 包含vector中元素的类型 如 vector < int>
对待老式编译器,当vector的元素还是vector时, 外层括号,和内层元素见 ,需要一个空格,如
vector < vector< int> >
vector< int> ivec (4,5);
vector < int > svec{3,4};
如果是圆括号,是构造vector对象
如果是花括号,是初始化列表。
但是花括号在无法当作列表时候, 又会当成圆括号来用, 这编译器做的也太复杂了。
vector操作
http://www.cplusplus.com/reference/vector/vector/
vector< int>::size_type
- C++ 墙角知识 02
- C++ 墙角知识
- C++ 墙角知识 03
- C++ 墙角知识 04
- C++ 墙角知识 04 我是用C++来写C的程序员.
- 墙角转弯
- JAVA墙角涂鸦
- 墙角下的toLowerCase()
- IBM挖Sun的墙角
- jsp小知识02-------<c:if>
- C知识(1)
- C语言知识列表
- C#+SQLService基础理论知识
- C一些知识总结
- 知识小记(C#)
- C语言 小知识!~
- C 小知识整理
- C语言知识补遗
- 谈谈Android Material Design 中的Tint(着色)
- Unity 4.5 升级到 5.1.2相关
- topcoder intoTheMatrix
- matlab笔记
- Linux中常用的SVN指令汇集
- C++ 墙角知识 02
- 基于python 的Apriori算法
- BestCoder Round #54
- 再探私有/公有静态成员变量与私有静态成员方法
- StringUtils用法+StringUtils详细介绍
- cocos2dx3.3 使用cocos studio2.0 导出的.csb文件
- 弹出圆角Label,然后隐藏Label
- BC - Geometric Progression (等比数列的性质 + java大数)
- 分别使用递归和迭代实现快速排序