inline в C++

  Рет қаралды 2,670

Volodya Mozhenkov

Volodya Mozhenkov

Күн бұрын

Пікірлер: 16
@Sergei_Sai
@Sergei_Sai 4 жыл бұрын
Начиная с 17-го стандарта благодаря inline можно инициализировать static поля внутри класса/структуры: struct Same { static inline int value = 5; };
@ДмитрийБузницкий-б3н
@ДмитрийБузницкий-б3н 2 жыл бұрын
Спасибо, Володя, за этот урок
@МаксимХвостов-м1й
@МаксимХвостов-м1й 4 жыл бұрын
Спасибо Володя, но вы немного перепутали - стандарт частично упраздняет volatile, inline как уже отметили в комментариях давно является рекомендацией повышающий порог при котором компилятор решает делать функцию встраиваемой см Jason Turner C++ Weekly - Ep 136 - How `inline` Might Affect The Optimizer Если заглянуть в новый код GCC range library то можно заметить что разрабы inlin'ом не брезгуют, есть предложения добавления аналога force_inline в стандарт в виде атрибута. Инлайнить теперь можно статические переменные. Короче всё выглядит так что использование ключевого слова inline в C++ только развивается :)
@amir32806
@amir32806 4 жыл бұрын
Время покажет. :) Возможно inline постигнет такая же участь как и register.
@dominuspiritus
@dominuspiritus 4 жыл бұрын
inline ещё нужен, чтобы соблюдать правило odr. В Вашем примере было бы множественное определение (если делать include в main.cpp и lib.cpp). В этом случае этот keyword нужен, чтобы функция была определена единожды. По этой причине нужно все реализации функций в .h файлах помечать inline (если они находятся вне тела класса)
@Алексей-о9б4г
@Алексей-о9б4г 4 жыл бұрын
Спасибо за видео!
@ИванШл
@ИванШл 3 жыл бұрын
Пэй Мэй от мира программирования
@nikolaysokolov9027
@nikolaysokolov9027 4 жыл бұрын
Спасибо!
@Cent72984
@Cent72984 2 жыл бұрын
По вашему последнему примеру, компилятор ругается без слова инлайн, как его добавляю все ок компилируется)
@torskandinav4634
@torskandinav4634 4 жыл бұрын
Не знаю почему в ++ хотят отказаться от inline, В kotlin я его использую для того что бы не было стирания типов, и это прям очень нужная иногда вещь, но опять inline надо с умом применять, тут я думаю так же.
@ИванОсинин-с7и
@ИванОсинин-с7и 4 жыл бұрын
Я дурак использовал инлайн с многоточием в аргументах функции
@torskandinav4634
@torskandinav4634 4 жыл бұрын
в доках про это написано вроде, если ты про аналог джавовского vararg говоришь.
@BobiBobObana
@BobiBobObana 4 жыл бұрын
расскажи пожалуйста про cmake
@ИванОсинин-с7и
@ИванОсинин-с7и 4 жыл бұрын
На счет того, что инлайн ничего не сломает. Это не совсем правда. Если использовать многоточие в аргументах функции, то при обращении к аргументам вы получите мусор (естественно должна быть включена оптимизация, иначе инлайн вообще не применится)
How Much Tape To Stop A Lamborghini?
00:15
MrBeast
Рет қаралды 259 МЛН
ты C++ РАЗРАБОТЧИК?) ага
12:04
Winderton
Рет қаралды 246 М.
The Inline Keyword in C.
16:18
Jacob Sorber
Рет қаралды 58 М.
Ссылки и полиморфизм в C++
19:24
Volodya Mozhenkov
Рет қаралды 3,1 М.
Раковый узел в Freenet
17:40
Volodya Mozhenkov
Рет қаралды 3,9 М.
Создание сборщика мусора | С
16:02
Winderton
Рет қаралды 141 М.
Что такое Internet? (обзорный урок)
21:15
Volodya Mozhenkov
Рет қаралды 5 М.
P.15 Макросы и inline-функции в  C и C++
31:17