Итак, я определил класс как
DataLoggingSystemStateReceiver
{
DataLoggingSystemStateReceiver()
: // initializer list
{
// stuff
}
// ... other functions here
};
В основном я создаю экземпляр DataLoggingSystemStateReceiver следующим образом:
int main()
{
// ... run stuff
Sensor sensor(port, timer);
DataLoggingSystemStateReceiver dlss();
Log::notice("started");
return 0;
}
Однако, когда я выполняю этот код в gdb, он запускается:
Sensor sensor(port, timer);
пропуски
DataLoggingSystemStateReceiver dlss();
и продолжается с
Log::notice("started");
Что дает?
РЕДАКТИРОВАТЬ: путем изменения
DataLoggingSystemStateReceiver dlss();
до
DataLoggingSystemStateReceiver dlss;
в main (), строка выполняется. Может кто-нибудь объяснить, почему?