Udostępnij za pośrednictwem


detect_mismatch

Umieszcza rekord w obiekcie.Konsolidator sprawdza te rekordy w poszukiwaniu potencjalnych niezgodności.

#pragma detect_mismatch( "name", "value"))

Uwagi

Podczas łączenia projektu, konsolidator wyrzuca błąd LNK2038, jeśli projekt zawiera dwa obiekty, które mają taką samą name , ale każdy ma inną wartość value.Umożliwia to dyrektywie, zapobieganiu przed łączeniem niespójnych plików obiektu.

Nazwy i wartości są literałami ciągów znaków i przestrzegają zasad literałów ciągów w odniesieniu do znaków ucieczki i łączenia ciągów.Uwzględniają one wielkość liter i nie mogą zawierać przecinka, znaku równości, znaku cudzysłowu lub znaku null.

Przykład

W tym przykładzie utworzono dwa pliki, które mają różne numery wersji dla tej samej wersji etykiety.

// pragma_directive_detect_mismatch_a.cpp
#pragma detect_mismatch("myLib_version", "9")
int main ()
{
   return 0;
}

// pragma_directive_detect_mismatch_b.cpp
#pragma detect_mismatch("myLib_version", "1")

Jeśli nastąpi kompilacja obu tych plików przy użyciu wiersza polecenia cl pragma_directive_detect_mismatch_a.cpp pragma_directive_detect_mismatch_b.cpp, wystąpi błąd LNK2038.

Zobacz też

Informacje

Dyrektywy pragma i słowo kluczowe __Pragma