Как быть уверенным в оптимизации копирования / возврата
Я часто возвращаю объекты по значению, предполагая, что копия elision / RVO произойдет.
Но я не очень хорошо разбираюсь в компиляторах, и возможность, что иногда что-то в моем коде может саботировать копирование без моего ведома, пугает меня.
Нужно ли иметь в виду простой набор правил, в соответствии с которыми я могу быть достаточно уверен, что произойдет удаление копии (или, по крайней мере, я не буду этому препятствовать)?