Я пытаюсь решить, как преобразовать ссылку на const struct в указатель неконстантной структуры.Преобразование ссылки const struct на неконтинентный указатель
У меня есть-структуру под названием Foo:
struct Foo
{
Foo& someFunc()
{
//do something
return *this;
}
};
У меня есть метод:
struct Bar
{
Foo* fooPointer;
void anotherFunc(const Foo& foo)
{
// set fooPointer to foo's pointer
}
};
Я буду называть это так:
Foo foo;
Bar bar;
bar.anotherFunc(foo.someFunc());
Но как я пишу anotherFunc()?
void anotherFunc(const Foo& foo)
{
fooPointer = &foo; // <-- This doesn't work as foo is still const
}
Почему «anotherFunc» должен принимать ссылку на const? – ecatmur
Если вам нужно сохранить указатель на неконстантный объект, передайте неконстантную ссылку, иначе вы просто попрошайничать. –
@ecatmur Для примера это просто так. Я задаю очень конкретный вопрос, не ищу помощь в реструктуризации моего кода. – Beakie