Я привык писать код без модулей, где заголовочные файлы содержат объявления функций вроде:
// foo.h
class Foo
{
void bar();
};
а соответствующий .cpp файл содержит определение:
// foo.cpp
#include "foo.h"
void Foo::bar()
{
// ...
}
Насколько мне известно, это делается для уменьшения времени компиляции и сокращения зависимостей. Если modules будет использоваться, будет ли это применяться? Было бы так же быстро иметь класс в одном файле с определениями, как это делают Java и С#? Если это так, возникнет ли необходимость в файлах .hpp
и .cpp
при использовании модулей?