Visualizzazione dei risultati da 1 a 3 su 3

Discussione: [c++]mfc costruttori

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826

    [c++]mfc costruttori

    Ciao.
    Ho una classe base CBase con due puntatori a controlli , pList e pTree rispettivamente un albero e una listview.
    da questa classe base derivano 2 classi :
    Cbasefirst e CbaseSecond.
    queste due classi utilizzano in modo comune(sia l'una sia l'altra) i puntatori ai controlli pList e pTree.

    ho pensato di aggiungere nel costruttore di cbase il passaggio di questi due puntatori.
    e di inserirli in due variabili protette comuni a tutte le classi derivate.
    , ma nei costruttori delle classi derivate cosa devo mettere?
    Grazie.

  2. #2
    Utente di HTML.it L'avatar di Stoicenko
    Registrato dal
    Feb 2004
    Messaggi
    2,254
    Bè richiami il costruttore della classe base no? Cbase(1punt, 2punt);

  3. #3
    codice:
    #include <iostream>
    
    class CBase{
    	private:
    	const int fMember1, fMember2;
    	
    	public:
    	void Dump (void) const{
    		std::cout << fMember1 << std::endl;
    		std::cout << fMember2 << std::endl;
    	}
    	
    	public:
    	CBase (const int theMember1, const int theMember2):
    	fMember1 (theMember1),
    	fMember2 (theMember2){
    	}
    	
    	virtual ~CBase (void){
    	}
    };
    
    class CDerived: public CBase{
    	public:
    	CDerived (const int theMember1, const int theMember2):
    	CBase (theMember1, theMember2){
    	}
    	virtual ~CDerived (void){
    	}
    };
    
    int main (void){
    	const CDerived aDerived (1, 2);
    	aDerived.Dump ();
    	return 0;
    }
    Osserva che ho messo i distruttori virtuali: metticeli anche tu se vuoi evitare probabilissimi mal di testa futuri ;-)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.