0

Существует ли другая технология, такая как RVO (оптимизация возвращаемого значения) или NRVO (называемая оптимизацией возвращаемого значения), которую можно использовать с VC2008?Оптимизация возвращаемого значения в VC2008

+1

делать что, точно? – 2009-05-17 14:27:26

+0

просто знать, так что я не пишу код, который не может быть оптимизирован моим компилятором при условии, что есть возможность – yesraaj

+2

не беспокоить, писать код без таких оптимизаций, тратить время на размышления об алгоритмах. Если одна конкретная функция станет узким местом, только тогда ее оптимизируйте (но профилируйте, чтобы проверить, что это оптимизация). – vava

ответ

1

Возможно, this может вам помочь.

Но, как правило, это компилятор, который делает такую ​​оптимизацию, а не вы.

2

Я бы не стал слишком беспокоиться об этих оптимизациях, если бы был вами. Помимо всего прочего, они не переносимы.

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

+1

. Более эффективный C++ имеет элемент RVO .. также подумал, что было бы хорошо знать эти вещи – yesraaj

Смежные вопросы