Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
1

inline функции

05.09.2012, 21:57. Показов 863. Ответов 4
Метки нет (Все метки)

Добрый вечер. Хотелось бы узнать, есть ли минусы у inline функций кроме увеличения размера файла? Везде пишут что использование "жирных" inline фунций, наоборот, отрицательно скажется на производительности, но почему - там не объяснено
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.09.2012, 21:57
Ответы с готовыми решениями:

Inline функции - на сколько должна быть маленькая функция, чтоб она подошла под inline?
Здравствуйте. Знаю теорию, но не понимаю, на сколько должна быть маленькая функция, чтоб она...

inline функции vs инструкции inline функций
Здравствуйте. Чтобы не писать повторно код, нужно использовать функции. Но если функции компактные,...

Inline функции
Здарова всем! А может кто-нибудь объяснить товарищу внятно, для чего нужны inline-функции? Вроде...

Inline функции
Друзья!Инлайн функции могу быть определены только внтури класса?Или могут быть определены вне...

4
6242 / 3543 / 898
Регистрация: 28.10.2010
Сообщений: 5,926
05.09.2012, 22:02 2
Код inline функций подставляется на место вызова во время компиляции. Если функция большая и часто вызывается, то размер файла естественно увелится.
1
Эксперт С++
8297 / 6128 / 613
Регистрация: 10.12.2010
Сообщений: 28,659
Записей в блоге: 30
05.09.2012, 22:03 3
Компилятор может просто произнорировать это слово...
А в других случах сам делать встраивание...

Так что это слово всего лишь пожелание для компилятора
1
~ Эврика! ~
1254 / 1003 / 74
Регистрация: 24.07.2012
Сообщений: 2,002
05.09.2012, 22:04 4
Много использования (жирных) инлайн функций — раздувается размер кода и этот код может не влезает в кеши. Вместо того, чтобы часто используемая функция лежала себе в уголке кеша и никого не трогала, её копии плавают по закешированной части программы, уменьшая полезный объём кеша и увеличивая количество промахов.
1
298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
05.09.2012, 22:14  [ТС] 5
Цитата Сообщение от Петррр Посмотреть сообщение
Код inline функций подставляется на место вызова во время компиляции. Если функция большая и часто вызывается, то размер файла естественно увелится.
Это понятно, вопрос был какие еще минусы у использования таких функций

Цитата Сообщение от Avazart Посмотреть сообщение
Компилятор может просто произнорировать это слово...
А в других случах сам делать встраивание...
Так что это слово всего лишь пожелание для компилятора
Это мне известно, любые ключевые слова фукнции - лишь рекомендация, и хоть хороший компилятор сам решает что и как обрабатывать, различия хочется понимать самому

Цитата Сообщение от ~OhMyGodSoLong~ Посмотреть сообщение
Много использования (жирных) инлайн функций — раздувается размер кода и этот код может не влезает в кеши. Вместо того, чтобы часто используемая функция лежала себе в уголке кеша и никого не трогала, её копии плавают по закешированной части программы, уменьшая полезный объём кеша и увеличивая количество промахов.
Спасибо, это уже понятнее) вопрос исчерпан
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.09.2012, 22:14

inline функции
Объясните, пожалуйста, почему со всеми inline программа не работает, а если их закомментировать -...

Inline функции.
Здравствуйте. Скажите пожалуйста, объявление функции как inline нужно делать как в прототипе так и...

inline функции
Как рабоает функция inline, и какие у неё преимущества? Если она такая крутая как я понял, то зачем...

inline - функции
Стоит-ли добавлять префикс inline ко всем функциям, состоящим из 1-2 строк?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru