Rumah >pembangunan bahagian belakang >C++ >Apakah pengendali comel comment c# null (??)?
Dalam pengaturcaraan C#, anda mungkin menemui kod misteri:
Barisan kod ini mengandungi satu set tanda tanya dua yang menarik ", yang menyebabkan rasa ingin tahu orang. Adakah mereka bentuk baru simbol pengkomputeran ternary?
<code class="language-csharp">FormsAuth = formsAuth ?? new FormsAuthenticationWrapper();</code>
melancarkan simbol operasi penggabungan kosong
Jawapannya terletak pada konsep penggabungan udara (??). Sama seperti Sanyuan (segera jika) watak operasi, pengendali penggabungan udara menyediakan kaedah mudah untuk menilai sama ada nilai itu kosong.
Expression Expression
Kembangkan ungkapan di atas dan dapatkan item bersamaan logik berikut:
terus berkembang menjadi format yang lebih biasa:
<code class="language-csharp">FormsAuth = formsAuth != null ? formsAuth : new FormsAuthenticationWrapper();</code>makna dan penggunaan
<code class="language-csharp">if (formsAuth != null) FormsAuth = formsAuth; else FormsAuth = new FormsAuthenticationWrapper();</code>Pada dasarnya, jika nilai di sebelah kiri tidak kosong, nilai pengendali penggabungan udara adalah nilai di sebelah kiri. Jika tidak, ia diam sebagai nilai di sebelah kanan. Dalam erti kata lain, "Jika nilai di sebelah kiri tidak kosong, gunakannya, jika tidak, gunakan nilai di sebelah kanan."
Pengendali ini amat berguna untuk menggunakan pembolehubah inisialisasi nilai lalai untuk memastikan bahawa mereka tetap tidak -semasa pelaksanaan program. Ia juga boleh digunakan untuk menggunakan pengendali penggabungan udara berganda untuk memastikan tugasan nilai bukan pertama yang pertama. butiran yang perlu diperhatikan
Walaupun konsep itu bersamaan dengan pengembangan di atas, perlu diperhatikan bahawa pengendali penggabungan udara hanya menilai setiap ungkapan sekali. Ini amat penting jika salah satu ungkapan yang melibatkan kaedah kemungkinan kesan sampingan.
Atas ialah kandungan terperinci Apakah pengendali comel comment c# null (??)?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!