Рекомендации по синтаксису для принятия владения и освобождения объектов в C ++

Я хочу знать - есть ли какие-либо рекомендации по синтаксису (не) функций-членов C ++, которые позволяют мне понять (без комментариев , если возможно) политику владения его аргументами и возвращаемым значением. Под владением я подразумеваю, что владелец несет ответственность за уничтожение принадлежащего ему объекта.

Я различаю следующие правила относительно аргументов:

  • становиться владельцем
  • не принимать владение
  • доля

и о возвращаемом значении:

  • выпуск («возврат по значению» находится в этой группе )
  • не выпускать
  • share

Например, передача объекта по ссылке не требует его владения:

void func(object & obj) { ... }

В таких рекомендациях могут использоваться стандартные конструкции, такие как unique_ptr, shared_ptr и т. Д. Если таких нет руководств, то также приветствуются примеры возможных недопониманий синтаксиса.

7
задан abyss.7 3 November 2011 в 09:26
поделиться