Udostępnij za pośrednictwem


/VD (Wyłącz budowy przesunięcia)

/vdn

Argumenty

  • 0
    Pomija Członkowskie przemieszczenie destruktora/konstruktora vtordisp.Wybierz tę opcję tylko, jeśli masz pewność, wszystkie klasy konstruktory i destruktory wywołania wirtualnej praktycznie funkcje.

  • 1
    Umożliwia tworzenie członków przemieszczenie konstruktora/destruktora vtordisp ukryte.Ten wybór jest domyślnie.

  • 2
    Umożliwia użycie Operator dynamic_cast obiektu generowana.Na przykład, dynamic_cast z wirtualnej klasy podstawowej do klasy pochodnej.

    /vd2dodaje pole vtordisp, gdy wirtualne base funkcje wirtualnych./vd1powinno być wystarczające.Najczęściej gdy sprawa /vd2 jest niezbędne jest, gdy tylko wirtualnego funkcji w sieci wirtualnej base jest destruktor.

Uwagi

Te opcje dotyczą tylko kodu C++ korzystającego z wirtualnego podstaw.

Visual C++implementuje C++ budowy przemieszczenie wsparcia w sytuacjach, w których jest używany wirtualny dziedziczenia.Przesunięcia budowy rozwiązać problemu, utworzony podczas wirtualny funkcja zadeklarowana w wirtualnych base i zastąpiony w klasie pochodnej, jest wywoływana z konstruktora podczas budowy dalsze klasy pochodnej.

Problemem jest to, że funkcja wirtualne mogą być przekazywane nieprawidłowych this wskaźnik w wyniku rozbieżności między przesunięcia do wirtualnego podstaw klasy i przesunięcia do jej klas pochodnych.Roztwór zawiera pojedynczy budowy dostosowanie przemieszczenie, nazywane polem vtordisp dla każdego wirtualnego base klasy.

Domyślnie pola vtordisp są wprowadzane w każdym przypadku, gdy kod definiuje użytkownika konstruktory i destruktory i zastępuje również funkcje wirtualnych podstaw wirtualnych.

Opcje te dotyczą całego źródła plików.Użyj vtordisp , aby wyłączyć i ponownie włączyć vtordisp pola na podstawie klasy klasy.

Aby ustawić tę opcję kompilatora w środowisku programowania Visual Studio

  1. Otwórz projekt Stron właściwości okno dialogowe.Aby uzyskać szczegółowe informacje, zobacz Jak: Otwórz strony właściwości projektu.

  2. Kliknij C i C++ folder.

  3. Kliknij wiersza polecenia stronę właściwości.

  4. Wpisz opcję kompilatora w Dodatkowe opcje pole.

Aby programowo ustawić tę opcję kompilatora

Zobacz też

Informacje

Opcje kompilatora

Ustawianie opcji kompilatora