умные указатели + «это» считается вредным?

В проекте C ++, который использует умные указатели, такие какboost::shared_ptrЧто такое хорошая философия дизайна в отношении использования "this«?

Считают, что:

Опасно хранить необработанный указатель, содержащийся в любом умном указателе, для дальнейшего использования. Вы отказались от контроля над удалением объектов и доверяете интеллектуальному указателю сделать это в нужное время.

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

Если я когда-нибудь хранюthis в другой переменной или передать ее в другую функцию, которая потенциально может сохранить ее для последующего использования или связать в обратном вызове, я создаю ошибки, которые появляются, когда кто-либо решает сделать общий указатель на мой класс.

Учитывая, что когда мне когда-либо уместно явно использоватьthis указатель? Существуют ли парадигмы дизайна, которые могут предотвратить ошибки, связанные с этим?

Ответы на вопрос(8)

Ваш ответ на вопрос