使用大括號當我聲明C++中的陣列,我可以使用大括號這樣的:C++類的分配可變
int var[3] = {1, 2, 3};
可否使用大括號中聲明類,等作爲操作符重載? 我的意思是,像這樣:
class example
{
private:
int m_sum;
public:
void operator{}(int a, int b, int c)
{
m_sum = a+b+c;
}
int get_sum()
{
return m_sum;
}
}
int main()
{
example ex = {1, 2, 3};
std::cout << ex.get_sum() << endl; // prints 6
return 0;
}
上面的代碼只是我的想象,但我想用大括號作爲該代碼。
爲什麼不'ex例如(1,2,3)'? – Evert
@Evert因爲當我聲明一個類變量時我想獲得可變參數。使用stdarg.h可能是很好的選擇,但它需要一個包含多個參數的參數。花括號分配不需要它,至少當我聲明純C數組時。 – Mossid
@quantdev謝謝!我現在不確定,但也許這正是我想要的。 – Mossid