2012-10-29 17 views
6

C++ ve C++/cx'i bir araya getirme konusunda bir sorunum var. FreeType kitaplığını kullanmam gerekiyor, ancak bazı değişkenler için "jenerik" adı kullanıyorlar. Ben de VC++ uzantılarını etkinleştirmeniz gerekir çünkü adı çakışmasıFreeType C++/cx anahtar kelimesiyle "generic" çakışması

1>freetype2\include\freetype\freetype.h(1391): error C2059: syntax error : 'generic' 

Ben sadece eklenen freetype referansı (jenerik c anahtar ++/cx olan) ve AIP benim projem özelliklerine dizinleri dahil neden WinRT uygulaması.

Bu vakayı çözmenin bir yolu var mı?

#define generic GenericFromFreeTypeLibrary 
#include .... files from FreeTypeLibrary 
#undef generic 

Bu çözüm çok güzel değil ama çalışması gerekir: Yardımlarınız :) Tomas

+0

WinRT uygulaması için bir/ZW seçenek çakışmasını nasıl çözersiniz? Sadece * .c dosyasını * .cpp'ye yeniden adlandırmak ister misiniz? – CReaTuS

+0

Merhaba - Ben aynı soruyu vururken bu soruyu buldum. Freetype'i/clr: pure ile derlemeye mi çalışıyorsunuz? Eğer öyleyse, başarılı oldun mu? – bright

cevap

12

kullanın önişlemci geçici olarak bu anahtar kelimeyi yeniden adlandırmak için teşekkür ederiz.

+0

Bu neye benzemesi gerektiğine dair açık bir örnek verebilir misiniz? GenericFromFreeTypeLibrary tarafından ne demek istiyorsun? – BRabbit27

+0

'GenericFromFreeTypeLibrary' yalnızca rastgele oluşturulmuş bir addır - sadece FreeTypeLibrary'ın bu ismi jenerik yerine kullanmasına neden olmak için - WinRT'deki anahtar sözcüktür. ABRACADABRA'yı veya istediğiniz her şeyi kullanabilirsiniz - yeni bir çakışmalara yol açmayacağını varsayarak ... – PiotrNycz

+0

Tamam Bu şeyi başka bir şeyle değiştirmem gerektiğini düşündüm. – BRabbit27