非對象數組比方說,我的功能都排列在它通過這樣的:的借鑑意義
int someFunction (SomeClass * const * array, int arr_size) { }
這是一些結構的陣列:
struct SomeStruct {
int value;
int value2;
};
什麼我想實現正在該對象中聲明的對象內引用:
int someFunction (SomeStruct * const * array, int arr_size)
{
NewClass newclass (array, arr_size);
}
我的構造函數如下所示:
Newclass::NewClass(SomeStruct * const * array, int arr_size)
{
SomeStruct ** myReference = new SomeStruct * [arr_size];
for (int i = 0; i < arr_size; ++i)
{
myReference[i] = array[i];
}
myReference[0] -> value = 10;
}
現在,如果我想打印出數組中第一個元素的值,我只能得到零。
int someFunction (SomeStruct * const * array, int arr_size)
{
NewClass newclass (array, arr_size);
cout << array[0] -> value << endl;
}
輸出:
0
它甚至有可能從類指非對象?我如何讓我的參考數組更改源數組?我曾在該函數中的引用數組作爲非對象之前,一切正常。不,我不能只是離開它。
沒有[SSCCE](http://sscce.org/),沒有特別的問題(我做錯了什麼)太寬泛/不清楚)。編輯!! –
@ g-makulik不知道什麼是我的問題不清楚。儘管編輯它。 – Saraph
我不知道你真的想做什麼。爲什麼創建'NewClass'只改變'array'中的值?但是你的'NewClass'構造函數沒有做你認爲它的做法,'* const *'是什麼? – crashmstr