zoukankan      html  css  js  c++  java
  • C++的一些黑暗料理

    本文中的“黑暗料理”仅限本人在学习C++的过程中感觉易忘、有趣、不为大多数人所知的一些特性。

    1. C++中int型数据在VC++环境下最小值为什么是 -32678,而不是-32677,其中涉及到原码、补码、反码的一些知识。

    2. C++中的运算符的优先级及结合性。

    3. C++中强制类型转换的方法:1)double (a),2)(int) x,3)(float)(5%3)。

    4. C++中的逗号运算符和逗号表达式,优先级最低,表达式2的值是整个表达式的值。

    5. 在标准输入输出流中使用操作符,需要包含 iomanip 头文件。

    6. 带有默认参数的函数,默认参数总是放在函数形参列表的最后。

    7. 函数重载与函数模板。其中重载函数仅要求函数名相同,参数类型/数目/顺序有一项不同即可,返回值可同可不同。

    8. 函数的形参与实参,函数的形参在定义函数的时候是不占用存储单元的,只有在函数调用时,才会从动态存储区为形参分配内存,然后函数调用结束后

        马上释放存储单元。函数的实参和形参所用的当然不是同一块存储单元。

    9. 数组在定义或者作为函数形参的时候可以省略第一维的值,但是不可以省略第二维或者更高维的值。

    10. 包括一维、二维、多维、字符数组在内的各种各样的赋初值初始化的方法。

    11. 关于字符串结束标志 ‘ ’。它是自动在字符串后面添加的,前面的字符数为字符串的实际长度。但没有提供足够的初值的时候,字符数组会默认数组

         成员是‘ ’,就像数组默认为 0 一样。用字符串为字符数组赋初值的时候,小心因为‘ ’的原因而出错(数组长度不够)。字符数组最后完全可以不是‘ ’。

    12. 处理字符串的问题上,C语言:字符串常量;字符数组;字符串处理函数。

         C++:string类。

    13. 在VC++环境下,一个char型数据占一个字节,一个int型数据占两个字节,一个float型的数据占4个字节,一个double型数据占8个字节。

    14. 在VC++环境下,会为每一个指针变量(不论其指向的类型是什么)分配 4 个字节的存储空间。

    15. C++中的传值与传址: 经典的swap函数,错误的写法中只是形参的值交换,实参的值并没有变化,正确的用指针的写法中,形参为指针变量,直接修改

          了对应存储单元的值。这两种方式都属于传值方式。

          而正确的使用引用的写法中,是C++中的传址方式。

    16. 共用体和枚举。

    17. int* p[4] 与 int (*p)[4]以及 int p[x][4]的区别,详见 http://blog.csdn.net/ajioy/article/details/6951643

    18. C++中的控制结构包括顺序结构、选择结构、循环结构。

    19. 不包括循环等控制结构且在类体内定义的成员函数,C++默认为内置 incline 函数。(谭书原话,理解其意就好)。

    20. 成员函数的存储方式:一个对象所占的空间大小只取决于该对象中数据成员所占的空间,而与成员函数无关。成员函数代码是存储在对象空间之外的。

         不同的对象使用的是同一个函数代码段,它怎么能够分别对不同对象中的数据进行操作呢?--->this 指针。

    21. this 指针。

    22. 指向对象成员函数的指针的定义和使用。

    23. 一个类的默认构造函数(无参调用)只能有一个。

    24. 对象初始化时可以采用构造函数,成员初始化列表,成员函数(set 函数)等。

    25. 构造函数只能利用参数初始化列表对常数据成员进行初始化。静态数据成员只能在类体外进行初始化。

    26. 解决多重继承的二义性的方法是加上作用域限定符。

    27. 虚基类与虚继承的目的。

    28. 赋值兼容:可以把子类对象赋给基类对象。

    29. 同名覆盖。

    ps:不定期更新。

  • 相关阅读:
    【树链剖分】【线段树】bzoj2157 旅游
    【高斯消元】【异或方程组】poj1222 EXTENDED LIGHTS OUT
    【树链剖分】【线段树】bzoj3626 [LNOI2014]LCA
    【dfs】bzoj3563 DZY Loves Chinese
    【高斯消元】【异或方程组】【bitset】bzoj1923 [Sdoi2010]外星千足虫
    【高斯消元】bzoj1013 [JSOI2008]球形空间产生器sphere
    【博弈论】bzoj1115 [POI2009]石子游戏Kam
    【最近公共祖先】【树链剖分】CODEVS 1036 商务旅行
    【块状树】【博弈论】bzoj3729 Gty的游戏
    【博弈论】【SG函数】bzoj1777 [Usaco2010 Hol]rocks 石头木头
  • 原文地址:https://www.cnblogs.com/niuxichuan/p/5223385.html
Copyright © 2011-2022 走看看