Visual C++ Developer Center > Visual C++ Forums > Visual C++ Language > error C2512: 'ecgclass' : no appropriate default constructor available
Ask a questionAsk a question
 

Answererror C2512: 'ecgclass' : no appropriate default constructor available

  • Wednesday, November 04, 2009 9:14 AMkiranpreddy05 Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     

    Hi,
    While compiling i am gettin the error descrobed as above...
    Tat is the only error i m getting pls help me out...
    I m using MSVC++ 6.0 enterprise edition.

    void PegAppInitialize(PegPresentationManager *pPresent)
    {
        /* WB Auto-Generated End (20)  */

        /* WB Auto-Generated Start (21)  */
        PegResourceManager::InstallResourcesFromTable(&Default_Theme_ResourceTable);
        //error is pointed here //   ecgclass *pWin = new ecgclass();
        pPresent->Center(pWin);
        pPresent->Add(pWin);
        /* WB Auto-Generated End (4)  */
    }


    ecgclass::ecgclass(PEGINT Left, PEGINT Top, ecgicount) :
        PegWindow(FF_THIN)
    {
        PegRect ChildRect;
        PegThing *pChild1, *pChild2;
    .
    .
    .
    .
    .
    .
    .

    }

Answers

  • Wednesday, November 04, 2009 9:52 AMShival Mathur Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer
    Hi

    Since you have provided a parameterized constructor for ecgclass, you need to create a default constructor for this too. Compiler will not do this for you now that you have a user defined parameterized constructor. This usually happens if you try to create an object of ecgclass like

    ecgclass myEcgClass;

    Shival
    • Proposed As Answer byShival Mathur Wednesday, November 04, 2009 11:09 AM
    • Marked As Answer bykiranpreddy05 Thursday, November 05, 2009 6:17 AM
    •  

All Replies

  • Wednesday, November 04, 2009 9:52 AMShival Mathur Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer
    Hi

    Since you have provided a parameterized constructor for ecgclass, you need to create a default constructor for this too. Compiler will not do this for you now that you have a user defined parameterized constructor. This usually happens if you try to create an object of ecgclass like

    ecgclass myEcgClass;

    Shival
    • Proposed As Answer byShival Mathur Wednesday, November 04, 2009 11:09 AM
    • Marked As Answer bykiranpreddy05 Thursday, November 05, 2009 6:17 AM
    •  
  • Wednesday, November 04, 2009 9:58 AMViorel_MVPUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Proposed Answer

    Specify required parameters. For example: ecgclass * pWin = new ecgclass(10, 10, 1).

    • Proposed As Answer byShival Mathur Wednesday, November 04, 2009 11:09 AM
    •