在C類中的類的數據成員++,我們可以提供默認的構造以及任何無參數constructors.If的,我們使用一個構造函數初始列表中的每個參數的構造函數,則心不是它像我們是初始化成員不止一次?這個概念是否有效?(我認爲我們只能初始化一次)。 另外,通過這樣的邏輯,如果我們有一個恆定的數據成員或參考,如果我想初始化與由用戶所提供的值,我怎樣才能做到這一點的恆定?我發現在C代碼片段++引物,它看起來像初始化在C++
class constref
{
public:
constref(int ii):i(ii),ci(ii),ri(i)
{
}
private:
int i;
const int ci;
int &ri;
}
心不是上面的代碼wrong.because因爲我們已經提供了一種構造帶參數,我們需要定義默認constructor.So恆定和被初始化兩次這是我的error.How可以將其作爲參考工作? 感謝
但是你能告訴什麼是這個代碼發生了什麼?
#include<iostream>
#include<stdlib.h>
using namespace std;
class dummy
{
int a;
public:
dummy():a(0)
{
}
dummy(int i):a(i)
{
}
void output()
{
cout<<a<<endl;
}
};
int main()
{
dummy d;
d=dummy(4);
d=dummy(3);
d.output();
return 0;
}