Меня интересует одна вещь, когда модули переходят в C++. Раньше были файлы заголовков и файлы .cpp. Функции .cpp не могут быть встроены.
Вот мой вопрос. Насколько мне известно, семантика встраивания не будет изменена, но если я реализую (не встроив) функцию:
Код: Выделить всё
export module blabla;
export class MyClass {
public:
void f();
};
void MyClass::f() { /*Implementation*/ }
Сможет ли оптимизатор встроить функцию в этом случае, ведь функция по-прежнему реализована в том же модуле? Насколько мне известно, раньше это было невозможно, поскольку это помещалось в специальный файл реализации.
Подробнее здесь:
https://stackoverflow.com/questions/400 ... ining-in-c