Ссылки и нарезка объектов - PullRequest
11 голосов
/ 12 мая 2010

У меня нет моего Effective C ++, и это меня так беспокоит, что мне приходится просить о моем здравомыслии. Учитывая

class Foo : public Bar{}

void MyFunc(Bar &_input);

Если я передаю Foo, я сталкиваюсь с проблемой нарезки или я ее избежал?

Ответы [ 3 ]

13 голосов
/ 12 мая 2010

Не проблема, потому что вы передаете ссылку. Вы не создаете новый объект, просто позволяете MyFunc получить доступ к исходному объекту.

6 голосов
/ 12 мая 2010

Поскольку вы передаете ссылку - нет , если только вы не назначите экземпляр Bar.

2 голосов
/ 12 мая 2010

Нарезка является проблемой только тогда, когда вы приводите объект к его родительскому классу. Когда вы разыгрываете указатели или ссылки, разделение не выполняется.

...