2012-03-13 86 views
0

我在C++中做了一些编码,并在调试时跳过了一些行,比如构造函数等等。有人有一个想法如何发生?调试时C++跳转行

这里是最重要的类声明:

这是类的我的GUI

#include "VisiTest.h" 
#include "List.h" 

class MonInterface : public VisiTest 
{ 
public: 

这是构造在跳过线的问题出现

MonInterface(char *theName); 
public slots: 
    virtual void testSuivant(); 
    virtual void demarrer(); 
    virtual void arreter(); 
    virtual void vider(); 
    virtual void premier(); 
    virtual void dernier(); 
    virtual void precedent(); 
    virtual void suivant(); 
private: 
    Donnee donnee; 
    List<Donnee> listDonnee; 
    bool m_Started; 
    int getIntCurrent(); 
}; 

此声明是班级构造函数的定义

MonInterface::MonInterface(char * theName) : VisiTest(theName) 
{ 
    donnee.typeTest = 0; 
    donnee.registreSW = 0; 
    donnee.retourSW = 0; 

    donnee.registreLD = 0; 
    donnee.valeurLD = 0; 

    donnee.etatLD = 1; 
    donnee.etatSW = 1; 

    resetTest(); 
    resetArchive(); 
    m_Started = false; 
} 

然后在此构造跳过多行对象“donnee”包含了许多垃圾,我的名单也

最后,这是结构的Donnee

struct Donnee 
{ 
    int typeTest; 

    int registreSW; 
    int retourSW; 
    int etatSW; 

    int registreLD; 
    int valeurLD; 
    int etatLD; 
}; 
+0

使用F11(默认)键进入功能,并确保禁用内联。 – 2012-03-14 00:11:48

+0

你想知道如何解决这个问题,请与我们分享解决方案 – TripleS 2013-10-22 05:22:19

回答

0

你有一些优化编译定义级别(-Ox)? 它发生在我有gcc优化和调试选项时。 如果是这种情况,删除任何优化选项将使您的代码调试良好。

+0

我用visual studio编译它全部自动 – 2012-03-13 23:55:03

+0

*全部自动完成对不起 – 2012-03-13 23:55:43

+0

请确保你正在调试Debug版本,而不是Release版本。在工具栏中有快速访问,或者在“生成”菜单下选择“配置管理器”。 “主动解决方案配置”应显示“调试”(在Visual Studio 2010中,YMMV)。 – ixe013 2012-03-14 00:30:47