Compartilhar via


/VD (finalizar a construção de disable)

/vdn

Argumentos

  • 0
    Suprime o membro de deslocamento do construtor/destrutor de vtordisp.Escolher esta opção somente se tiver certeza que todos os construtores de classe e destrutores chamam funções virtuais praticamente.

  • 1
    Permite a criação de membros ocultos de deslocamento do construtor/destrutor de vtordisp.Essa opção é o padrão.

  • 2
    Permite que você use Operador de dynamic_cast em um objeto sendo construído.Por exemplo, um dynamic_cast de uma classe base virtual para uma classe derivada.

    /vd2 adiciona um campo de vtordisp quando você tiver uma base virtual com funções virtuais./vd1 deve ser suficiente.A maioria dos casos comuns onde /vd2 é necessário quando são a única função virtual em sua base virtual é um destrutor.

Comentários

Essas opções se aplicam somente ao código C++ que usa bases virtuais.

Visual C++ implementa o suporte de deslocamento de compilação C++ em situações onde a herança virtual é usada.Os deslocamentos de compilação determinam o problema criado quando uma função virtual, declarada em uma base virtual e substituída em uma classe derivada, é chamada de um construtor durante a construção de uma classe derivada adicional.

O problema é que a função virtual pode ser passada um ponteiro inválido de this como resultado de discrepâncias entre os deslocamentos as bases virtuais de uma classe e os deslocamentos a suas classes derivadas.A solução fornece um único ajuste de deslocamento de compilação, chamado campo de vtordisp, para cada virtual de uma classe base.

Por padrão, os campos de vtordisp são apresentados sempre que o código define construtores definidos pelo usuário e destructors e ela sobrescreve funções virtuais de bases virtuais.

Essas opções afetam arquivos de origem inteiros.Use vtordisp para suprimir e reabilitar em campos de vtordisp em uma base de classe-por- classe.

Para definir essa opção de compilador no ambiente de desenvolvimento Visual Studio

  1. Abra a caixa de diálogo de Páginas de Propriedade do projeto.Para obter detalhes, consulte:Como: abrir páginas de propriedades do projeto.

  2. Clique na pasta de C/C++ .

  3. Clique na página de propriedades de Linha de comando .

  4. Digite a opção de compilador na caixa de Opções adicionais .

Para definir essa opção de compilador

Consulte também

Referência

Opções do compilador

Configurando opções de compilador