Итак, я определил класс какGDB пропускает мой код!
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;
в главной(), линия выполняет. Может кто-нибудь объяснить, почему?
просто для того, чтобы убедиться: вы используете '-g' для компиляции кода? –
Да, я использую -g. –