0
該陣列必須是堆棧,我需要修改這些元素。以下是我有:在C++中如何將靜態數組作爲參數傳遞給對象,並在那裏修改原始數組?
Class Me {
private:
int *_array;
void run(){
for (int i = 0 ; i < 10; ++i) {
_array[i] += 100;
}
}
public:
Me(int array[]) {
_array = array;
}
};
這是主要的:
int array[10] = {0, 1,2,3,4,5,6,7,8,9};
Me m(array);
m.run();
for (int i = 0 ; i < 10; ++i) {
cout << array[i] << " ";
}
cout << endl;
我想陣傳球被引用完成的,所以不管我在run()一樣,在主)的陣列(應隨身攜帶結果也是如此,但我顯然是錯的。我錯過了什麼暗示?謝謝!
首先,這段代碼甚至不會輕微編譯(例如,你聲明'Me :: run'是私有的)。請張貼實際的代碼。 – 2010-10-06 22:30:12
它是'class',而不是'Class'。 – GManNickG 2010-10-06 22:34:58
你有代碼庫中的#define public private和#define private public和#define Class class嗎? – Donotalo 2010-10-06 22:59:20