伊伊伊利

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  1. 声明+定义;
  2. 指针必须初始化;
  3. int a(5); <=> int a=5;
  4. 浮点数不可直接==比较;
  5. 类型转换方式:类型转换操作符<类型说明符>(表达式)。如:static_cast<int>(z);
  6. unsigned 无符号、const 定值;
  7. NULL与nullptr的区别:NULL相当于0,nullptr只能用于指针的初始化(二义性);
  8. 字符串匹配时,使用正则匹配会失去对特殊字符的判断;
  9. C++与Qt最大的不同就是:Qt会打包继承出自己独特的、更遍历的类,在C++中无法使用;
  10. vector<string>中,不可使用双下标[][],若需使用则需一个过度变量string便可[];
  11. 时间复杂度为O(log2n)的为二分法;
  12. sizeof(char[])函数计算的是分配的字符串数组的内存大小(与数组内容大小无关);
  13. sizeof(char*)计算的也是字符串数组内存大小为4; sizeof(char**)计算的是第一个字符所占的内存大小为1;
  14. strlen()才是计算字符串数组的长度;
  15. 虚函数可以在子类中进行重载,也可以不重载而沿用父类中的方法;<>
  16. 但纯虚函数必须重载,因为在其声明类中没有函数实现; (如继承一个类时,必须重载的函数就是纯虚函数);
  17. &为按位与运算符,&&为and运算符;
  18. 静态分配发生在程序编译和连接的时候,如int a[100]; 动态分配发生在程序调入和执行的时候,如容器的插入;
  19. 堆只能动态分配,栈动态分配与静态分配即可.且栈的动态分配与堆不一样,其动态分配由编译器释放;
  20. 无论是什么指针所占字节均只依赖平台,32位下为4字节,64位下为8字节;
  21. 无论在什么平台,int占4字节,char占1字节,short int占2字节,unsigned int占4字节,float占4字节,double占8字节,long long占8字节;
  22. 指针在32位平台占4字节,64位平台占8字节;long在32位平台上占4字节,64位平台上占8字节,unsigned long在32位平台占4字节,64位平台占8字节;
  23. int数组所占字节为 int所占字节 x 数组个数;
  24. 输出中转义字符为",如"/为输入/符号;
  25. 当解析器遇到了||,若前面的为真,后面的便不会执行;
  26. 指数形式中的指数只能是十进制整数;
  27. reinterpret_cast用来处理无关类型之间的转换,如指针转换成整数,整数转换成指针(注:需32位);
  28. reintepret_cast
  29. 用户自定义标识符由字母、数字和下划线组成,只能由字母或下划线开头;
  30. 若n=1表达式n++的值为1,n的值为2;
  31. "a"为字符串常量; 'a'为字符常量;
  32. 当b为继承Cshape类的成员时 ,Cshape &a = b 属于引用实现多态;
  33. define宏定义为原样替换,不额外添加括号等;
  34. 对于一个数组,sizeof返回这个数组所有元素占的总空间包括结束符"\0"(一个字节);
  35. 逗号表达式的值为从左往右最后一个表达式的值,且从左往右依次进行运算;
  36. 没有用private、public、protected定义的数据成员是私有成员;
  37. 输入带空格的字符串数据可通过getline(cin, str);接着通过sstream头文件里面的istringstream myStream(str)转换为数据流,接着挨次>>,便可实现按空格获取字符串;
  38. 字符串分割函数为string.substr(pos,lengh),包含pos后lengh位数据;
  39. 构造函数中必须赋值所有引用的成员变量,特别是在多构造函数中需要注意;
  40. tuple中取值记得加(),如get<0>(tuple);
posted on 2021-07-16 11:01  伊伊伊利  阅读(48)  评论(0编辑  收藏  举报