Aracılığıyla paylaş


/Zc:wchar_t (wchar_t Yerel Tür)

C++ standardına göre yerleşik bir tür olarak ayrıştırın wchar_t .

Sözdizimi

/Zc:wchar_t[-]

Açıklamalar

/Zc:wchar_t açıksa, wchar_t C++ olarak derlenmiş koddaki yerleşik tam sayı türü için anahtar sözcüktür. /Zc:wchar_t- (eksi işaretiyle) belirtilirse veya C wchar_t olarak derlenmiş kodda yerleşik bir tür değildir. Bunun yerine, wchar_t stddef.h kurallı üst bilgisinde için unsigned short olarak typedef tanımlanır. (Microsoft uygulaması bunu stddef.h ve diğer standart üst bilgiler tarafından eklenen başka bir üst bilgide tanımlar.)

C++ standardının yerleşik bir tür olmasını gerektirdiğinden wchar_t /Zc:wchar_t- önerilmez. Sürümü kullanmak typedef taşınabilirlik sorunlarına neden olabilir. Visual Studio'nun önceki sürümlerinden yükseltme yaparsanız ve kod örtük olarak 'wchar_tunsigned shortyi öğesine dönüştürmeye çalıştığından derleyici hatası C2664 ile karşılaşırsanız, /Zc:wchar_t- ayarı yerine hatayı düzeltmek için kodu değiştirmenizi öneririz.

C++ derlemelerinde /Zc:wchar_t seçeneği varsayılan olarak açıktır ve C derlemelerinde yoksayılır. /permissive- seçeneği /Zc:wchar_t etkilemez.

Microsoft, iki baytlık imzasız bir değer olarak uygular wchar_t . Microsoft'a özgü yerel türüyle __wchar_teşler. hakkında wchar_tdaha fazla bilgi için bkz . Veri Türü Aralıkları ve Temel Türler.

sürümünü kullanmaya typedef devam eden eski kodlarla birlikte çalışmak zorunda olan yeni kod yazarsanız, kodunuzun /Zc:wchar_t ile derlenmiş kodla veya bu kod olmadan derlenmiş kodla bağlanabilmesi için hem de unsigned short__wchar_t varyasyonları wchar_tiçin aşırı yüklemeler sağlayabilirsinizwchar_t. Aksi takdirde, biri ile diğeri /Zc:wchar_t etkinleştirilmemiş olmak üzere kitaplığın iki farklı derlemesini sağlamanız gerekir. Bu durumda bile, eski kodu yeni kodu derlerken kullandığınız derleyicinin aynısını kullanarak oluşturmanızı öneririz. Farklı derleyicilerle derlenmiş ikili dosyaları kesinlikle karıştırmayın.

/Zc:wchar_t belirtildiğinde, _WCHAR_T_DEFINED ve _NATIVE_WCHAR_T_DEFINED simgeleri tanımlanır. Daha fazla bilgi için bkz . Önceden Tanımlanmış Makrolar.

/Zc:wchar_t artık varsayılan olarak açık olduğundan kodunuz derleyici COM genel işlevlerini kullanıyorsa, comsupp.lib için açık başvuruları (açıklama pragmasından veya komut satırından) comsuppw.lib veya comsuppwd.lib olarak değiştirmenizi öneririz. (/Zc:wchar_t- ile derlemeniz gerekiyorsa comsupp.lib kullanın.) comdef.h üst bilgi dosyasını eklerseniz, sizin için doğru kitaplık belirtilir. Derleyici COM desteği hakkında bilgi için bkz . Derleyici COM Desteği.

wchar_t C kodunu derlerken yerleşik tür desteklenmez. Visual C++ ile ilgili uyumluluk sorunları hakkında daha fazla bilgi için bkz . Standart Dışı Davranış.

Bu derleyici seçeneğini Visual Studio geliştirme ortamında ayarlamak için

  1. Projenin Özellik Sayfaları iletişim kutusunu açın. Ayrıntılar için bkz . Visual Studio'da C++ derleyicisi ve derleme özelliklerini ayarlama.

  2. Yapılandırma Özellikleri>C/C++>Dil sayfasını seçin.

  3. Treat wchar_t As Built-In Type özelliğini değiştirin.

Bu derleyici seçeneğini program üzerinden ayarlamak için

Ayrıca bkz.

/Zc (Uyumluluk)