CObject:: AssertValid

Virtual void AssertValid ( ) const;

Osservazioni

AssertValid esegue un controllo di validità su questo oggetto verificando il proprio stato interno. Nella versione di Debug della libreria, AssertValid può affermare e quindi terminare il programma con un messaggio che elenca il numero di riga e il nome del file dove l'asserzione non riuscita.

Quando si scrittura la propria classe, eseguire l'override della funzione AssertValid per fornire servizi diagnostici per te stesso e gli altri utenti della vostra classe. L'override di AssertValid di solito chiama la funzione AssertValid della propria classe base prima di controllare i membri dati univoci per la classe derivata.

Perché AssertValid è una funzione const , non sono consentiti per modificare lo stato dell'oggetto durante la prova. Funzioni personalizzate AssertValid classe derivata non devono generare eccezioni ma piuttosto dovrebbero affermare se rilevano dati oggetto non valido.

La definizione di "validità" dipende dalla classe dell'oggetto. Come regola, la funzione deve eseguire un "controllo superficiale". Che è, se un oggetto contiene puntatori ad altri oggetti, dovrebbe controllare per vedere se i puntatori non sono null, ma essa non deve eseguire test sugli oggetti indicati con i puntatori di validità.

Esempio

Vedere CObList::CObList per un elenco della CAge classe utilizzata in tutti gli esempi di CObject.

/ / esempio per CObject:: AssertValid
public static void const CAge::AssertValid()
{
 nbsp;  CObject::AssertValid();
    ASSERT (m_years > 0); 
    ASSERT (m_years < 105);
}

CObject pa&noramica |nbsp; Membri della classe | Gerarchia Chart

Index