Sdílet prostřednictvím


/Zc:wchar_t (wchar_t je nativní typ)

wchar_t analyzujte jako předdefinovaný typ podle standardu jazyka C++.Parametr /Zc:wchar_t je standardně zapnutý.

/Zc:wchar_t[-]

Poznámky

Pokud je parametr /Zc:wchar_t zapnutý, mapuje se wchar_t na nativní typ __wchar_t společnosti Microsoft.Při zadání parametru /Zc:wchar_t- (se znaménkem minus) se wchar_t mapuje na typedef typu unsigned short.(V jazyku Visual C++ 6.0 a starším nebyl wchar_t implementován jako předdefinovaný typ, ale byl deklarován v souboru wchar.h jako typedef typu unsigned short.) Nedoporučujeme používat parametr /Zc:wchar_t-, protože standard jazyka C++ vyžaduje, aby byl wchar_t předdefinovaným typem.Použití verze typedef může způsobit problémy s přenositelností.Pokud upgradujete ze starší verze jazyka Visual C++ a dojde k chybě kompilátoru C2664, protože kód se snaží implicitně převést wchar_t na unsigned short, doporučujeme chybu opravit změnou kódu, nikoli nastavením parametru /Zc:wchar_t-.

Microsoft implementuje wchar_t jako dvoubajtovou hodnotu bez znaménka.Další informace o typu wchar_t naleznete v tématech Rozsahy datového typuZákladní typy (C++).

Pokud píšete nový kód, který musí spolupracovat se starším kódem, jenž stále používá verzi typedef typu wchar_t, můžete poskytnout přetížení pro varianty unsigned short a __wchar_t typu wchar_ttak, aby váš kód mohl být propojen s kódem kompilovaným pomocí parametru /Zc:wchar_t nebo bez něj.V opačném případě byste museli poskytnout dvě různá sestavení knihovny – jednu se zapnutým a jednu s vypnutým parametrem /Zc:wchar_t.Také v tomto případě doporučujeme sestavit starší kód pomocí stejného kompilátoru, jaký používáte ke kompilaci nového kódu.Nikdy nekombinujte binární soubory zkompilované různými kompilátory.

Při zadání parametru /Zc:wchar_t jsou definovány symboly _WCHAR_T_DEFINED_NATIVE_WCHAR_T_DEFINED.Další informace naleznete v tématu Předdefinovaná makra.

Pokud váš kód používá globální funkce modelu COM kompilátoru, protože parametr /Zc:wchar_t je nyní standardně zapnutý, doporučujeme, abyste explicitní odkazy na knihovnu comsupp.lib změnili na comsuppw.lib nebo comsuppwd.lib, a to z pragmatu komentáře nebo z příkazového řádku.(Pokud je nutné zkompilovat s /Zc:wchar_t-, použijte comsupp.lib.) Pokud zahrnete soubor hlaviček comdef.h, není určen správné knihovny.Informace o podpoře modelu COM kompilátoru najdete v tématu Podpora kompilátoru modelu COM.

Typ wchar_t není podporován při kompilaci kódu jazyka C.Další informace o problémech přizpůsobení v jazyku Visual C++ naleznete v tématu Nestandardní chování.

Nastavení tohoto parametru kompilátoru ve vývojovém prostředí Visual Studio

  1. Otevřete dialogové okno Stránky vlastností svého projektu.Podrobnosti naleznete v tématu Práce s vlastnostmi projektu.

  2. V levém podokně rozbalte položku Vlastnosti konfigurace, C/C++ a pak vyberte položku Jazyk.

  3. Změňte vlastnost Považovat typ wchar_t za zabudovaný typ.

Programové nastavení tohoto parametru kompilátoru

Viz také

Referenční dokumentace

/Zc (shoda)