В следующем коде gcc не создает экземпляры объектов NSP :: Admin и NSP :: Server.
Это просто пропускает их.
int main(int argc, char **argv)
{
// Here we bootstrap google logging
// we also install the signal handler
google::InitGoogleLogging(argv[0]);
google::InstallFailureSignalHandler();
// now we parse the arguments with gflags
google::ParseCommandLineFlags(&argc, &argv, true);
NSP::Admin admin();
NSP::server server();
DLOG(INFO) << "boost io_service run";
NSP::IOService::getIOService().run();
}
Если я добавлю параметр в CTORS, он будет создан.
Пример:
NSP::Admin admin(1);
NSP::server server(1);
Я не могу разбить точку на них с помощью GDB, и степпинг пропускает их.
Эти два объекта регистрируются в службе boost io и вызывают метод в своих CTORS.
NSP - это пространство имен проекта.
Использование gcc4.2 во FreeBSD,
glog, gflags и boost asio.