c++Primer学习

  1. 浮点字面值不能带后缀U(u),整数后面不能带后缀F(f)。
  2. int ival =ival; 是正确的。
  3. 通常把一个对象定义在它首次使用的地方是一个很好的方法。
  4. 头文件用于声明而不是定义。但是头文件可以定义类、值在编译时就已知道的const对象和inline函数。317140
  5. 两个迭代器不能相加,但是可以相减。
  6. 很多运行时错误都源于使用了未初始化的指针。因此除非所指向的对象已存在,否则不要先定义指针。
  7. 一个空指针加0,得到另一个值为0指针(空指针)。
  8. 两个指针减法操作结果是与机器相关的ptrdiff_t类型数据,size_t 也是与机器相关数据类型。
  9. const size_t kArrSize=10;

    int int_arr[kArrSize];

    vec<int> int_vec(kArrSize);

    几种遍历:

        [1] for(size_t i=0; i!= kArrSize; ++i )

        [2] for(int *pbegin=int_vec, *pend=int_vec+ kArrSize; pbegin!=pend; ++pbegin)

        [3] for(vec<int>::size_type i=0; i!= kArrSize; ++i)

        [4] for(vec<int>::iterator iter=int_vec.begin(); iter!=int_vec.end(); ++i)

  10. int *pi = new int[10]; 未初始化

    int *pi = new int[10](); 初始化 0

    动态分配数组,元素只能初始化为元素类型的默认值,不能使用初始化列表为各个元素提供不相同的初值。

  11. 在for语句中可以定义多个对象,但是该处只能出现一个语句,即所有对象必须具有相同的类型。如for(int a,int b;….;….)   for(int a, string s;…...;…….) 都是错误的。

  12. 不能复制数组。

 

posted @ 2013-10-09 18:57  知心大叔  阅读(184)  评论(0)    收藏  举报