programında c++
extern int anything;
tam olarak eşittir? Ben 10 sınıftan fazla var ve her bir sınıfta varsayılan değer değiştirmeden bir değişkeni kullanmak istiyorum. eğer bu değişkeni bu sınıftan birine koyarsam, diğer değişkendeki değişkenin değerini değiştiririm fakat diğer sınıf değişken değerleri varsayılan olarak ayarlanmış fakat C++ extern int anything;
gibi her bir sınıfta sabit değiştirilmiş değere sahip olmak için harici veya global değişkene ihtiyacım var ama c#
C++ extern eşittir C#
0
A
cevap
1
bir sınıfta ortak bir statik alan veya özellik oluşturmak zorunda kalacak C# global değişken oluşturmak için:
class Globals {
public static int AnythingProperty { get; set; }
public static int AnythingField;
}
Globals
sınıf yalnızca statik üyeleri (isim belirtir) o zaman değiştirebilir içeriyorsa sınıf beyanı static class Globals
.
class SomeClass {
public void SomeMethod() {
Globals.AnythingProperty += 1;
Globals.AnythingField = 2;
}
}
bağlantı artacak Kodunuzdaki genel değişkenleri olması ve ince hataları ve kod anlaşılması zor yol açabilir: Başka sınıfın içinden
sonra özelliği veya alanını erişebilirler. Çoğu zaman global değişkenleri kullanmanın alternatifleri vardır, ancak en azından şimdi nasıl yapacağınızı biliyorsunuz.İlgili konular
- 1. Rust'ta extern fn ve extern "C" fn arasındaki fark nedir?
- 2. Yöntem uygulama yardımcılarına eşittir (C#)
- 3. VB.NET Select ... Vaka Eşittir C#
- 4. Başka bir dosyadan C++ extern "C" değişkenine erişme
- 5. C++: Extern C Bir Ad Alanı İçindeki İşlevler
- 6. C++: extern ve satır içi işlevler
- 7. Bu extern "C" nin nasıl algılandığı
- 8. extern "Statik geri çağırma fonksiyonu için" C "
- 9. C# durum duyarsız eşittir operatör var mı?
- 10. Öğe başına öğe başına [] öğesine eşittir. C++
- 11. Python'un "struct.pack/unpack" inin C# değerine eşittir?
- 12. extern extern ve statik konusunda okuduktan sonra "C" static void * işlevi
- 13. "extern const" ile "extern" sadece
- 14. MSVC6, extern "C" işlevlerinin istisnalarını nasıl ele alabilir?
- 15. C# kelimesinde extern alias anahtar sözcüğünü ne zaman kullanmalıyız?
- 16. C de değişken için extern ihmal, ama hala çalışır?
- 17. Tek bir işlev (bsearch/qsort) için extern C AND C++'nin amacı nedir?
- 18. "FOUNDATION_EXPORT" vs "extern"
- 19. C++, C# ve ruby'den c dll çağrılıyor
- 20. C++ dizgesini döndür C#
- 21. , C#
- 22. <= operatörü C++ daha az soru işareti imzalamak eşittir
- 23. Wrapper C#
- 24. int * const AND extern int *
- 25. extern enum
- 26. C#
- 27. "C"
- 28. C++ içinde C adlarını kullanma
- 29. Yönetilmeyen C++ dizesine geçiş C# DLL
- 30. C++ C işlevi nasıl çağrılır?
C# 'ye ihtiyacınız yok. –
Bunu yapmak için DllImport'a ihtiyacınız var, C++ uygulamasını doğrudan kullanabilirsiniz, bunu kontrol edin - http://stackoverflow.com/questions/5110706/how-does-extern-work-in-c –
Böyle bir özellik yok C# deki extern gibi, C# tamamen nesneye yöneliktir ve küresel deklarasyonları yapamazsınız. Yapmanız gereken tek şey, tüm 10 sınıfınız için bir üst sınıf oluşturmak ve bunun içinde bir statik değişken bildirmektir. Tüm 10 sınıfınızı ebeveyninizden devral – Ram