類範圍數組初始化我來自Java和Ruby,所以我也很難在C編碼簡單的東西++,C++是很難馴服......在C++ 11
我想在初始化數組具有可以通過類中的所有方法訪問的預定義值的類構造函數。是的,基本的東西。
換句話說,我想要做這樣的事情:
Box.h
class SomeClass
{
public:
SomeClass(int something);
SomeMethod();
DoSomething(int thing);
protected:
int _something;
int[] arr;
};
Box.cpp
SomeClass::SomeClass(int something) : something(_something)
{
arr ={16,2,45,65,45};
for (int x = 0; x < 5; x++)
arr[i] = arr[i] * _something;
}
SomeClass::SomeMethod(){
for (int x = 0; x < 5; x++)
DoSomething(arr[i]);
}
SomeClass::DoSomething(int thing){
//whatever
}
如何?
你想在編譯時固定數組大小嗎? – juanchopanza
是的,但它的所有值必須在構造函數中初始化 –
您應該指出是否需要C++ 11或C++ 03解決方案。不幸的是,沒有辦法做到你在C++ 03中所表達的內容。您必須在構造函數中創建一個臨時數組,然後使用for或其他算法(例如,填充,生成)。不幸的是,我並不知道C++ 11的方法可以做到這一點,但是還有一些額外的選項和容器類型可以以不同的方式完成。 – shawn1874