Kullanımdan kaldırmaya çalıştığım birkaç TypeDef var. Bunu zaten var olan kodla geriye dönük uyumluluk sağlamak için yapıyorum. Buna zarif (veya belki de çok da zarif olmayan) bir çözüm var mı? Platformdan bağımsız olmak isterdim, ancak bir Visual Studio tek çözümü varsa, bu da işe yarayacak. MSVC++ yılındaDeprecate Typedef
cevap
, böyle typedef
kullanımdan kaldırmak olabilir:
typedef __declspec(deprecated) int myint;
MSVC++ derleyici myint
kullanımdan kaldırıldı konusunda uyararak üretecektir!
Ve kaldırılmış typedef derlerken derleyici belirli bir mesajı oluşturmak istiyorsanız, o zaman bu yapın: kerelik kolay kod değişiklikleri izin verilir
typedef __declspec(deprecated("myint is deprecated, so most likely in the next version this myint will be missing")) int myint;
ne yapıyor? Son kısmı kaçırdığınızı düşünüyorum :)) – lurscher
Muhtemelen son parantezi kapatmanız gerekiyor. OT: http://xkcd.com/859/ – KitsuneYMG
@KitsuneYMG: Evet. Bu bir yazım hatasıydı. Teşekkürler! – Nawaz
Eğer sadece deprecated
içine typedef hareket olabilir typedef kullanan noktalarda using namespace deprecated
kullanımını gerektiren ad alanı.
o , örneği oluşturulan, bir uyarı üretecek bir şablon uydurmak mümkün olabilir bir seçenek değildir, ama hazırlıksız böyle bir uyarı oluşturmak için nasıl bilmiyorsanız:
template <class T>
class TypedefHolder;
template <>
class TypedefHolder<int>
{
typedef int WhateverType;
// Something that induces a compile warning.
};
böylece yerine:
typedef int WhateverType;
o olur:
typedef TypedefHolder<int>::WhateverType WhateverType;
Derleyici uyarıları oluşturabilirsem, bu çok iyi bir çözüm olduğunu düşünüyorum. Özel uyarılar hakkında herhangi bir fikri olan var mı? – Samaursa
- 1. Dart'ta typedef nedir?
- 2. C typedef const argüman
- 3. C: typedef union
- 4. 'Referans' typedef nasıl davranır?
- 5. typedef struct pointer tanımı
- 6. Cı Typedef fonksiyonu prototip.
- 7. typedef enum türü?
- 8. typedef şablonun türü
- 9. operator member_function_pointer_type() typedef olmadan?
- 10. typedef aynı tip
- 11. c typedef (ed) opak işaretçi
- 12. typedef arasındaki fark ve tanımlamak
- 13. JSDoc ayrı bir dosyada typedef
- 14. typedef neden enum türüyle kullanılıyor?
- 15. typedef struct ve enum, neden?
- 16. typedef enum NSNumber nasıl dönüştürülecek?
- 17. Nesnemde bir typedef enum kullanma Sınıf
- 18. CRTP ve typedef kullanan "Inherited" tipleri
- 19. Şablon işlevi için 'typedef' (boost :: make_shared)
- 20. typedef ve işaretçiyi işlev göstermek için C
- 21. İleri isimsiz yapının bir typedef ilan
- 22. template temel sınıf typedef üyeleri görünmez
- 23. Aynı anda typedef ve sınıf gerektirir
- 24. Bir yapının bildirilmesi: typedef struct name name;
- 25. JSDOC'de bir typedef parametresi nasıl genişletilir?
- 26. Sınıf üyesi typedef yoksa varsayılan türünü kullanmak için şablon uzmanlığı
- 27. hata C2823: bir typedef şablonu yasadışı - işlev göstergesi
- 28. Kendisine işaretçi içeren bir typedef yapısı nasıl tanımlanır?
- 29. 'typedef typename Foo <T> :: Bar Bar'
- 30. Amaç-° C; işaretçi olmadan kimlik yerine typedef objc_object;
Taşınabilir çözüm yoktur. @Nawaz Microsoft uzantısını verdi. Gcc karşılığı 'typedef int myint __attribute __ ((kullanımdan kaldırılmış));'. – aschepler