Tüm temel öğelerin System
ad alanının altına girdiğini okudum. using System
'u açıklarsam, programımda bir derleme hatası olmasını beklerdim. Ancak, başarılı bir şekilde çalışıyor. Bu neden? int
System.Int32
için bir başka adıdır ve "Int32" beri zaten (yani. "Tam"), sözdizimi de using System;
belirtmek zorunda kalmadan yasal onun ad öneki çünküİlkel veri türleri neden sistem ad alanını dahil etmeden çalışır?
cevap
O var kodunuzun üstü.
MSDN pasajı aşağıdaki uygulamaları direktifleri kullanarak bir bölümü ile başlayan bu konsept
En C# açıklanır. Bu bölüm, uygulamanın sık sık kullanacağı ad alanlarını listeler ve programlayıcı içerisindeki bir yöntemin kullanıldığı her seferde tam olarak nitelenmiş bir adını belirtmekten kurtarır. Örneğin, satır ekleyerek:
Console.WriteLine("Hello, World!");
yerine:
System.Console.WriteLine("Hello, World!");
System.Int32
bir programın başlangıcında
using System;
, programcı kodu kullanabilirsiniz (aka "int") ikinci olur. İşte kodunda bu bir örnektir -
//using System;
namespace Ns
{
public class Program
{
static void Main(string[] args)
{
System.Int32 i = 2; //OK, since we explicitly specify the System namespace
int j = 2; //alias for System.Int32, so this is OK too
Int32 k = 2; //Error, because we commented out "using System"
}
}
}
hat 11 tam olmadığı için/tam yetkili bir tür yumuşatma, using System;
hata için gitme uncommented olması gerekir.
Ek referanslarımız-
Built-In Types Table (C# Reference) (Listeler her türlü dahili ve onların NET framework eşdeğer)
Ya monitörüm gamma çıktı veya sizin vizyonunuz bir arıdır;) (renk şeması) – MickyD
Evet .. Genellikle siyah bir arka plan üzerinde kodlar. Sadece renkleri beyaza dönüştürdüm, bu biraz daha iyi olmalı. – iliketocode
Hehe daha iyi. Karanlık düzeni de kullanıyorum sadece _dark blue_ gözümde çılgın şeyler yaptı;) – MickyD
olarak daha önce bahsetmişti int
, System.Int32
türünde bir takma addır. İlkel türlerin diğer adı, C# dili tarafından dolaylı olarak olarak bilinir.
object: System.Object
string: System.String
bool: System.Boolean
byte: System.Byte
sbyte: System.SByte
short: System.Int16
ushort: System.UInt16
int: System.Int32
uint: System.UInt32
long: System.Int64
ulong: System.UInt64
float: System.Single
double: System.Double
decimal: System.Decimal
char: System.Char
Yani, ayrıca basit türleri olarak bilinen bu takma adları, herhangi bir ad belirtmek gerekmez: İşte listesidir.
Başka bir deyişle, "derleyici büyüsü". ++ Bu sorunun cevabının çoğunda Q. – RubberDuck
Int'i kullandığınızda, temel olarak System.Int32'yi yerleştirirsiniz.Bu tam tür adı olduğundan, aslında gerekmez using System;
Eğer
System.Int32 num = 0;
Bilseydin tüm ad alanlarını silerseniz Programınız bu olacak, hatta
using
Hayır, Sistem'i kullanmıyorsak, derleme hatasını artıracaktır; –
@RajeshPawde hayır olmaz. 'System.Int32' tam olarak nitelendirilmiş ve' 'using System''e ihtiyaç duymuyor;' –
Yukarıdaki hatam işe yarayacak. –
- 1. İlkel olmayan türleri nasıl yazarım?
- 2. Eclipse-CDT: Otomatik oluşturulan dahil koruma alanlarındaki Ad alanını kullan
- 3. Veritabanındaki ad alanını nasıl kaldırabilirim?
- 4. Protobuf 3 ilkel türleri herhangi bir
- 5. Composer ile psr-4 autoloading kullanırken ad alanını neden belirtin?
- 6. Ad alanını SOAP isteğinden kaldırma
- 7. IIFE ad alanını nasıl korur?
- 8. Neden stil ve düzen android ad alanını kullanmıyor?
- 9. Neden ad alanını belirten bir işlev çağrısı yavaş?
- 10. Tip Sınıfı Veri Türleri
- 11. Objective-C setValue: forKey on c ilkel türleri
- 12. Pas "kullan" vs C++ "ad alanını kullanarak"
- 13. Ad alanını QT_BEGIN_NAMESPACE ile bildirmek önemlidir. QT_END_NAMESPACE
- 14. App Engine'den (Java) ad alanını sil
- 15. Bir işlevin ad alanını nasıl belirlersiniz?
- 16. Bir C'deki ad alanını nasıl öykünebilir?
- 17. Bir ayırma sırasında ad alanını ayarlama
- 18. PHP sınıfı ad alanını dinamik olarak alın
- 19. Yeni projemin ad alanını nasıl adlandırılır?
- 20. Python Numpy Veri Türleri Performansı
- 21. C++ ilkel türünü java ilkel tür dizisine dönüştürün
- 22. Tam nitelikli ad alanını Roslyn'deki bir kullanma yönergesinden nasıl edinebilirim?
- 23. Statik değişkenin değiştirilmesi İlkel Sarıcı ile çalışır ancak ilkel tipte değil
- 24. RDF ad alanları (Anlamsal veri)
- 25. Çekirdek Veri özellik türleri listesi?
- 26. ithal C++ veri türleri ffi
- 27. Türleri
- 28. Kotlin veri sınıfları ve null türleri
- 29. Ad alanı bildiriminde nitelikli ad
- 30. EF6: Kod İlk Geçişlerini kullanarak ad alanını yeniden adlandırma
_Even_ olmadan çalışacak iş :) Sadece bir ipucu, eğer 'int' yerine Int32 diyorsan işe yaramaz. –
'int'' System.Int32' için bir * takma addır (kullanamayacağınız) –
@ AlexK.Kullanıcıyı kullanıyorum; –