C C++注意事项

  • sizeof(a)函数在编译时确定具体值,所以当把数组a[]用作函数传递参数时,函数内计算sizeof(a)得到的是a地址的大小。所以函数中要用到数组的长度需要额外参数传入,不能在函数内通过sizeof计算。
  • c99 及以后版本中才允许在for循环中定义变量,如for(int i=0;i<10;++i),且i为for循环内的局部变量,不能再for循环外引用。
  • 函数传递参数时const a[], const *p等价,且a数组和p指针所指向的值不能被修改。
  • 类内部定义的成员函数默认为inline
  • 非const成员函数中,this 指针是一个指向类类型的 const 指针,也就是说 this 指针保存的地址不能改变; const成员函数中,this指针是指向一个const类类型的const指针,也就是说既不能改变this所保存的地址,也不能改变this所指向的对象。
  • 如果成员函数在类定义体外定义,则用于返回类型的名字在类作用于之外,例见《C++ Primer》(4th)P381。
  • 类的static成员在类定义体内声明,类定义体外部定义,且定义不能标为static
  • c语言函数不支持引用传递