Можно сделать DBConnector (подключается к нужной БД), DBMapper (управялет ORM), DBService (следит за состоянием служб/демонов БД)
AccountData и EmployeeInfo не нужны — вместо них достаточно Account и Employee
#include #include int main()
{
std::cout << std::hex << std::numeric_limits<std::streamoff>::max() << "\n";
std::cout << std::hex << std::numeric_limits::max() << "\n";
std::cout << std::hex << std::numeric_limits::max() << std::endl;
return 0;
}
Вывод:
7fffffffffffffff
7fffffff
7fffffff
Флаги компиляции: /ZI /nologo /W3 /WX- /Od /Oy- /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_UNICODE" /D "UNICODE" /Gm /EHsc /RTC1 /GS /fp:precise /Zc:wchar_t /Zc:forScope /Fp"Debug\Test.pch" /Fa"Debug\" /Fo"Debug\" /Fd"Debug\vc100.pdb" /Gd /analyze- /errorReport:queue
Если вы помните, то по умолчанию поток открывается в режиме trancate
If sp is an invalid stream position, or if the function positions neither sequence, the positioning opera-
tion fails. If sp has not been obtained by a previous successful call to one of the positioning functions
(seekoff or seekpos) on the same file the effects are undefined.