CObject:: AssertValid

virtual privatevoid AssertValid ( ) const;

Observações

AssertValid executa uma verificação de validade neste objeto verificando seu estado interno. Na versão de Depurar da biblioteca, AssertValid pode declarar e, assim, encerrar o programa com uma mensagem que lista o número da linha e o nome do arquivo onde a declaração falha.

Quando você grava sua própria classe, você deve substituir a função AssertValid para fornecer serviços de diagnóstico para si e para outros usuários da classe. O substituído AssertValid chama normalmente a função AssertValid de sua classe base antes de verificar os membros de dados exclusivos para a classe derivada.

Como AssertValid é uma função de const , você não tem permissão para alterar o estado do objeto durante o teste. Suas próprias funções de AssertValid classe derivada não devem lançar exceções, mas sim devem declarar se eles detectarem dados de objeto inválido.

A definição de "validade" depende da classe do objeto. Como regra, a função deve executar uma "Marcar superficial". Ou seja, se um objeto contém ponteiros para outros objetos, ele deve verificar para ver se os ponteiros não são nulos, mas ele não deve executar testes sobre os objetos referenciados pelos ponteiros de validade.

Exemplo

Consulte CObList:: CObList para obter uma listagem do CAge classe usada em tudo exemplos de CObject.

/ / exemplo para CObject:: AssertValid
void CAge::AssertValid() const
{
 nbsp;  CObject::AssertValid();
    ASSERT (m_years > 0); 
    ASSERT (m_years < 105);
}

Visão geral de CObjectMembros de classe | Gráfico de hierarquia

Index