satu. var ajaib
Deklarasi variabel var telah ditambahkan di C# 3.0. Deklarasi ini mirip dengan var JavaScript, tetapi juga berbeda.
1. Hal yang sama, dapat menggunakan var untuk mendeklarasikan semua jenis variabel lokal.
2. Perbedaannya adalah ia hanya bertanggung jawab untuk memberi tahu kompiler bahwa variabel tersebut perlu menyimpulkan jenis variabel berdasarkan ekspresi inisialisasi, dan itu hanya dapat berupa variabel lokal.
dua. Kesamaan
itu bisa dideklarasikan
var bilangan bulat = 10;
var nama = "edisundong";
var angka = int baru[] { 1, 2, 3 };
tiga. Perbedaan
Var hanyalah sebuah kata kunci. Ini bukan tipe baru di C# 3.0. Ini bertanggung jawab untuk memberi tahu kompiler bahwa variabel perlu menyimpulkan tipe variabel berdasarkan ekspresi inisialisasi
int bilangan bulat = 10;
string nama = "edisundong";
int[] angka = int[] baru { 1, 2, 3 };
tiga. Catatan
1. Nilai harus diberikan pada saat deklarasi, karena deklarasi bergantung pada ekspresi di sisi kanan nomor penugasan.
var bilangan bulat;
bilangan bulat = 10;
Kesalahan penduduk lokal yang diketik secara implisit harus diinisialisasi akan dilaporkan selama kompilasi.
2. Setelah menggunakan var untuk mendeklarasikan variabel lokal, variabel tersebut masih memiliki tipe yang kuat dan dapat diuji sebagai berikut:
var bilangan bulat = 10;
bilangan bulat = "edisundong";
Kesalahan Tidak dapat secara implisit mengonversi tipe 'string' menjadi 'int' akan dilaporkan selama kompilasi.
3. Tipe waktu kompilasi dari ekspresi penginisialisasi tidak boleh berupa tipe kosong (null). Kompiler tidak dapat menyimpulkan tipe variabel lokal berdasarkan null, seperti pernyataan berikut:
var bilangan bulat = nol;
Tidak dapat menetapkan '<null>' ke kesalahan lokal yang diketik secara implisit akan dilaporkan selama kompilasi.
4. Pernyataan inisialisasi harus berupa ekspresi. Ekspresi inisialisasi tidak boleh memuat dirinya sendiri, namun dapat berupa ekspresi baru (yaitu, tipe anonim) yang berisi penginisialisasi objek atau koleksi.
Misalnya, Anda bisa mendeklarasikannya seperti ini:
var coll = Hashtable baru();
5. Deklarasi var terbatas pada variabel lokal dan juga dapat dimasukkan dalam pernyataan foreach, for, dan using. Penggunaan berikut ini salah:
Program kelas
{
private var i = 10; //Variabel privat global.
kekosongan statis Utama (string[] args)
{ }
}
Kata kunci kontekstual 'var' hanya dapat muncul dalam deklarasi variabel lokal. Kesalahan akan dilaporkan selama kompilasi.
Artikel ini berasal dari blog CSDN. Harap sebutkan sumbernya saat mencetak ulang: http://blog.csdn.net/superyoungchaos/archive/2009/12/23/5060696.aspx