Gerçekten "numaralama sınıf" C 11 ihtiyacımız var mı?
Gelince
struct E { enum E_ { HELLO }; }; // 'E' is inheritable
neden ihtiyacımız olsun o zaman
enum class E { HELLO }; // 'E' is not inheritable
IMO 2 Sürüm 1 Daha fazla özellik sunmuyor. enum class
sadece 2 ayraç {};
kurtarmak için sunulan sanmıyorum! Herhangi bir önemli yönü eksik muyum ?
Küçük bir soru olarak, enum class
enum struct
sözdizimi hem public
türemiş çünkü başka arasında herhangi bir fark var mı ?
CEVAP
Gerçekten gerek “sınıf 0 x " C”? numaralama mı
Hayır, "" enum class
. gerek yok İşlevselliği diğer yönden yeterince eşdeğer alabiliriz. Bu mantıkla, "" C bir sürü şey . gerek yok "Kendiniz durumda fonksiyonun parametre değişkeni ile sağlayabiliriz beri" sanal işlevleri ve miras gibi. gerek yok ""Üye işlevler; bu onlara ek bir argüman alarak taklit edilebilir. gerek yok
Dil özellikleri programcıları hayatlarını kolaylaştırmak için var. Sadece bir şey çünküolabilirelle gerektiği anlamına gelmez yapılabilir.
enum class
aşağıdaki özelliklere sahiptir:
- Bunu anlamak kolaydır; bu aynalar neçetelelerdiğer dillerde çalışır.
- Derleyici yazarların nispeten daha az gerektirir. Gibi özelliklere sahip olan uygulama çaba kontrastr-değeri başvuruyor,varadic şablonlarıyakullanıcı tanımlı sabitler.
- Herhangi bir şekilde sözdizimi sonu gelmez. Biraz önce
enum class
ama bu en yeni özellikler için doğru olduğunu görmek için tuhaf görünebilir. Buna alıştıktan sonra sorun yok, sorun yok. - Düzenli çeteleler nasıl çalıştığını tanımlamak değil 0 geriye doğru uyumlu. Eski tarz iş için kullandıkları aynı çeteleler.
- Klişe bir sürü kod yazmak zorunda sizi tutar. Boost
enum class
tanımlar efekti oluşturmak için bir makro var. Bu makro olmadan, çaba biraz köşede bulunan hastalar çalışmaya başlamak için harcamak zorunda. Ve öyle olsa bilebiriyazmak zorundaydı ve bu makro hata ayıklama.
Yani hayır, biz değil "ihtiyaç". Ama yine de bu dil için harika bir ilave ediyorlar.
Nasıl&; derleme quot&; Java sınıf dosy...
Bu ne anlama geliyor? &;'NSUnknow...
Numaralama "Miras"...
() süper yükseltir "eğer data: tü...
E çift kolon " ne anlama geliyor;::&qu...