simulasi penciptaan pembolehubah dinamik dalam C#
C# adalah bahasa yang ditaip secara statik, yang bermaksud jenis pembolehubah mesti diketahui pada masa penyusunan. Secara langsung mencipta pembolehubah secara dinamik, seperti yang anda mungkin dalam bahasa skrip, tidak mungkin. Walau bagaimanapun, kita dapat mencapai fungsi yang sama menggunakan pendekatan alternatif.
kamus: penyelesaian yang kuat
Kamus menyediakan cara yang fleksibel untuk meniru penciptaan berubah -ubah dinamik. Kamus menyimpan pasangan nilai kunci, di mana kunci bertindak sebagai nama berubah (rentetan) dan nilai memegang data. Menambah penyertaan ke kamus secara dinamik dengan berkesan mencipta "pembolehubah dinamik."Berikut adalah contoh:
<code class="language-csharp">using System; using System.Collections.Generic; public class DynamicVariables { public static void Main(string[] args) { // Create a dictionary to hold our "dynamic variables" var dynamicVars = new Dictionary<string, object>(); // Add "variables" dynamically for (int i = 0; i < 5; i++) { dynamicVars[$"var{i}"] = i * 10; } // Access and use the "dynamic variables" Console.WriteLine($"var2: {dynamicVars["var2"]}"); // Accesses the value associated with the key "var2" //Modify a "variable" dynamicVars["var0"] = "New Value"; Console.WriteLine($"var0: {dynamicVars["var0"]}"); } }</code>
. Kami kemudian menambah pasangan nilai kunci menggunakan interpolasi rentetan untuk menghasilkan nama berubah (dynamicVars
, var0
, dan lain-lain). Nilai boleh dari mana -mana jenis (menggunakan var1
untuk fleksibiliti). Akhirnya, kami mengakses dan mengubah suai nilai ini menggunakan kekunci rentetan mereka. Pendekatan ini secara berkesan menyerupai penciptaan pembolehubah dinamik sambil mematuhi menaip statik C#. Ambil perhatian bahawa menggunakan object
memerlukan pemeriksaan jenis apabila mengambil nilai untuk mengelakkan kesilapan runtime. Pertimbangkan menggunakan jenis yang lebih spesifik jika anda mengetahui jenis data terlebih dahulu. object
Atas ialah kandungan terperinci Bagaimanakah saya dapat mensimulasikan penciptaan pembolehubah dinamik di C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!