Zawsze odczuwam ból po zmianie z C# lub Pythona z powrotem na C++ i spełnieniu separacji .h i .cpp.Narzędzie do automatycznego oddzielania nagłówka C++ i implementacji
Więc pomyślałem, że może istnieje narzędzie, które na etapie wstępnej kompilacji może pobrać nagłówek (plik o specjalnym rozszerzeniu) i podzielić go na .h i .cpp?
Więc jeśli oryginalny plik tak:
class MyClass
{
public:
void HaHaHa()
{
//some logic
}
}
I wynik byłby jak i .h .cpp plików:
//.h
class MyClass
{
public:
void HaHaHa();
}
// .cpp
#include "MyClass.h"
void MyClass::HaHaHa()
{
//some logic
}
Niektóre googling nie pojawił się gotowy do korzystania z narzędzi . Ale jestem pewien, że to nie jest nowy pomysł i takie narzędzia powinny istnieć.
P.S. Wiadomo, że np. Visual Assist X i VIM mają narzędzia do obsługi rozdzielania .h i .cpp przy mniejszym bólu. Ale pytam o możliwość posiadania kodu w jednym pliku i rozdzielenie go automatycznie w ramach procesu kompilacji.
A dlaczego nie umieścić całego kodu w plikach h? Wolne kompilacje? –
Moduły będą prędzej (lub później) dojdą do C++, zobacz: http://stackoverflow.com/questions/3596147/modules-in-c0x to rozwiąże to z nadzieją. – tauran
"Powolne kompilacje" - jako przykład. Powolne parsery autokomplacji są jeszcze gorsze. Albo czasami piszę jakąś bibliotekę i nie chcę, żeby była "open source". Ogólnie rzecz biorąc, C++ zaprojektowano tak, aby miało to oddzielenie. Z tego punktu widzenia posiadanie takiego narzędzia jest bardzo jasnym rozwiązaniem. – MajesticRa