《C++是很危险的》中的代码全部来自网络及各种C++相关的书籍。 目的不是为了谴责C++, 而是希望大家注意C++中的某些细节。 这些细节在实际工程中根本用不到,所以大家就当笑话看看就好。
以下代码会输出几次"Hello world!"
#include <iostream>
using namespace std;
class Object
{
public:
    Object(int a=0)
    {
        cout<<"Hello world!"<<endl;
    }
};
class CA
{
public:
    CA()
        :o(1)
    {
    }
private:
    Object o;
};
class CB
{
public:
    CB()
    {
        o=1;
    }
private:
    Object o;
};
int main()
{
    CA ca;
    CB cb;
    return 0;
}
3次。
初始化列表会先于构造函数执行。