ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
18 мая
96941 Топик полностью
ReAl (14.08.2007 16:50, просмотров: 183) ответил vet_ на const int n=5; в хедере никакой памяти и не выделит
Скажем так - выделяет не больше, чем определение (раз уж тут так часто употребляются эти красивые слова "определение & объявление") inline-функции в том же хидере, так как в хидерах вообще ничего не выделяется, выделяется только в тех c/cpp - файлах, в которые они включаются. И я повторюсь - я не вижу в данном случае разницы между функцией, помещение которой в h-файл "облагорожено" ключевым словом inline и "инициализированной переменной", помещение которой туда же "облагорожено" словом const. В обеих случаях компилятор подставляет тело по месту: тело функции подставляется по месту и оптимизируется, "тело" const-"переменной" тем же оптимизатором превращается в поле инструкции процессора. И только в особых случаях (когда берётся адрес функции либо переменной) генерирует "отдельно стоящее тело". И при этом ничего ни с чем не конфликтует.