Size: a a a

2019 July 22

СВ

Сэр Гусь Важный... in Unreal Engine
Lex Modyanov
Не, инлайн это он код подставляет вместо вызова функции.
бес попутал
источник

AR

Anton Rassadin in Unreal Engine
norlin
> The original intent of the inline keyword was to serve as an indicator to the optimizer that inline substitution of a function is preferred over function call, that is, instead of executing the function call CPU instruction to transfer control to the function body, a copy of the function body is executed without generating the call. This avoids overhead created by the function call
А теперь читай дальше :)

Since this meaning of the keyword inline is non-binding, compilers are free to use inline substitution for any function that's not marked inline, and are free to generate function calls to any function marked inline.
источник

PL

Peter Leontev in Unreal Engine
Сэр Гусь Важный
@yolo_star я пропустил, Вот Лекс кинул
ты вот глянь вырезку про forceinline ещё
источник

n

norlin in Unreal Engine
Anton Rassadin
А теперь читай дальше :)

Since this meaning of the keyword inline is non-binding, compilers are free to use inline substitution for any function that's not marked inline, and are free to generate function calls to any function marked inline.
и как это меняет смысл инлайна? Кроме того, анриловский FORCEINLINE как раз и сделан, чтобы заставить компилятор таки заинлайнить функцию
источник

AR

Anton Rassadin in Unreal Engine
Основное назначение inline— разрешить multiple definitions. Инлайнинг функции компилятор делает на своё усмотрение, независимо от желания программиста.
источник

VA

Vladimir Alyamkin in Unreal Engine
norlin
да я преждевременно оптимизирую тут потихоньку. ECS же делаю.
ты бы профайлил для начала
источник

PL

Peter Leontev in Unreal Engine
norlin
и как это меняет смысл инлайна? Кроме того, анриловский FORCEINLINE как раз и сделан, чтобы заставить компилятор таки заинлайнить функцию
это же не анриловский, это мелкомягкие завезли :)
источник

n

norlin in Unreal Engine
Anton Rassadin
Основное назначение inline— разрешить multiple definitions. Инлайнинг функции компилятор делает на своё усмотрение, независимо от желания программиста.
так а где про это в доках-то?
источник

PL

Peter Leontev in Unreal Engine
norlin
так а где про это в доках-то?
тут хорошо
https://docs.microsoft.com/en-us/cpp/cpp/inline-functions-cpp?view=vs-2019

мы ж компилятор студии юзаем в ue4 чаще всего
источник

AR

Anton Rassadin in Unreal Engine
Здесь
источник

n

norlin in Unreal Engine
Anton Rassadin
Здесь
я оттуда же цитату привёл, что речь про оптимизацию вызова.
источник

AR

Anton Rassadin in Unreal Engine
norlin
так а где про это в доках-то?
источник

AR

Anton Rassadin in Unreal Engine
norlin
я оттуда же цитату привёл, что речь про оптимизацию вызова.
Ты неверно перевёл на русский
источник

n

norlin in Unreal Engine
Anton Rassadin
Ты неверно перевёл на русский
где именно?
источник

n

norlin in Unreal Engine
это не использование, а свойства inline функции ¯\_(ツ)_/¯
источник

AR

Anton Rassadin in Unreal Engine
norlin
это не использование, а свойства inline функции ¯\_(ツ)_/¯
Это определение её
источник

n

norlin in Unreal Engine
короче, не вижу смысла спорить, это уже не в тему моего вопроса вообще)))
источник

VA

Vladimir Alyamkin in Unreal Engine
источник

LM

Lex Modyanov in Unreal Engine
Anton Rassadin
Основное назначение inline— разрешить multiple definitions. Инлайнинг функции компилятор делает на своё усмотрение, независимо от желания программиста.
Где такое написано, если Норлин превел фрагмент где черным по англицки речь про другое.
источник

n

norlin in Unreal Engine
Anton Rassadin
Это определение её
> An inline function or inline variable (since C++17) has the following properties:

и кто тут неправильно переводит)))
источник