У меня есть следующая проблема:
//A.h
class A
{
//...
// this is the important part, i have to call this in the proper way
// in A::SetNewValue(), but i don't know how to do that
protected:
void SetValue(const int* i);
//...
public:
// ??
void SetNewValue(const int* p);
}
cpp:
//A.cpp
//??
A::SetNewValue(const int* p)
{
// ??
this->SetValue(&p);
}
и ...
//...
// and later in another file...
//...
A a = new A();
int a_value = 4;
int* p;
p=&value;
// ??
a->SetNewValue(p);
Объясненная проблема: класс A - это встроенный класс в платформе.У меня нет способа изменить защищенный A :: SetValue () на public, и я не могу добраться до него извне.Поэтому я решил написать другую функцию A :: SetNewValue () для вызова A :: SetValue, но я не знаю, как передавать указатели и ссылки в параметрах функции.У меня всегда есть такие ошибки: не могу конвертировать из * в &, const * в * и т. Д. ...
Как мне сделать это правильно?Это вообще возможно?
Большое спасибо за ваши усилия и за вашу помощь.
Редактировать: Код выше - пример. Я пробовал передавать параметры несколькими способами