У меня есть кодпроизводительность и читаемость на повторных функций
void Foo()
{
auto index = currentIndex();
if (index.isValid())
index.doSomething();
}
другой вариант
void Foo()
{
if (currentIndex().isValid())
currentIndex().doSomething();
}
Второй является более удобным для чтения для меня. Но как его производительность? Is currentIndex()
вычислено дважды в популярном компиляторе? Если currentIndex()
- это большая функция, которая занимает некоторое процессорное время, компилятор будет оптимизировать второй, как первый?
Имя переменной 'index' довольно ясно .. – Rapptz
Что возвращает' currentIndex() '? Первый и второй примеры выглядят так, как будто они не совпадают. –
yes, currentIndex() будет вызываться дважды во втором решении –