![](/img/trans.png)
[英]Weird C# GC behavior for Weakreferences and the null-conditional operator
[英]Weird behavior of conditional operator?
string sortedcolumn =
( dataGridView1.SortedColumn != null
? dataGridView1.SortedColumn.Name
: "username"
);
在上面的聲明中,當dataGridView1.SortedColumn==null
我得到dataGridView1.SortedColumn
為null的異常,而不是將value作為"username"
到sortedcolumn
var。
任何想法?
可能的原因:
dataGridView1
是包含空值的字段或變量。
dataGridView1
是返回null的屬性獲取器。
SortedColumn
是一個怪異的屬性獲取器,它第一次返回非null值,但之后返回null值。 (非常不可能,因為僅在調試器中查看它會改變結果。)
dataGridView1
, SortedColumn
或Name
是一個屬性獲取器,它引發您所看到的異常。
dataGridView1.SortedColumn
的類型會重載operator!=
,從而引發您所看到的異常。
dataGridView1.SortedColumn.Name
的類型可實現implicit operator string
,該implicit operator string
將引發您看到的異常。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.