从这部分不难看出,c++primer确实是一本很好的工具书,知识点讲的很细,结合小习题,c++复习起来很方便。
对于抽象数据类型(隐藏了实现的数据类型,主需要知道所支持的操作)包括string和vector,它们共同定义了size_type类型,用于存储string对象或者vector对象的长度,它在标准库中被定义为unsigned类型。
bitset的一些操作中返回的则是size_t类型(cstddef定义的unsigned整型),足以保存最大数组的长度。
用string对象初始化bitset时读入位集的顺序是“右=》左”;即按照bitset所定义的位数,最后一位输出时在第一位。
关于C/C++数组长度的大小如何计算:
http://hi.baidu.com/aleczhou/blog/item/4addd1881df0b691a5c27209.html
C/C++没有直接计算数组长度的函数,对于存放字符串的字符数组提供了一个strlen函数获取长度,那么对于其他类型的数组如何获取他们的长度呢?其中一种方法是使用sizeof(array) / sizeof(array[0]),在C++中常常要自己定义函数。
template <class T>
function getArrayLen(T& arr){
return sizeof(arr)/sizeof(arr[0]);
}