#include<iostream>
using namespace std;
class A{
int *numbers[5];
public:
void assignment(int ** x){
for(int i=0;i<5;i++)
numbers[i]=x[i]; //not changing just the value of *numbers[i] but the pointer numbers[i]
}
void print(){
for(int i=0; i<5;i++)
cout<< *numbers[i]<<endl;
}
};
int main(){
int *x[5];
for(int i; i<5;i++){
x[i]= new int(i);
cout<<*x[i]<<endl;
}
cout<<endl;
A numbers;
numbers.assignment(x);
numbers.print();
return 0;
}
Мой вопрос очень конкретный. Я хочу сделать то же самое, что и код выше, но вместо передачи аргумента функции присваивания (int **) указателем, чтобы сделать это по ссылке. Как я могу это достичь?C++ Передача указателем и прохождение по ссылке
Я немного озадачен вашим вопросом и принятым ответом. Если вы используете 'int * x [10]; ', вы не можете использовать его в качестве аргумента для' assign() '. Это то, чего вы надеялись достичь? –
Ну, вопрос только для образовательных целей, и меня спросили в моем замешательстве о передаче по ссылке. Для этого конкретного примера он отвечает на мой вопрос, поскольку весь вопрос касается этого конкретного сегмента кода, и он работает. Это правда, что то, о чем вы говорите, нуждается в чем-то отличном от выбранного ответа. Кроме того, то, что вы сказали, также было проблемой для меня, и ответ получил позже. Благодарю. – user234562