式は を"a"="a"
返しますFalse
。一体何が起こっているのですか?
編集:申し訳ありませんが、C#ではなくVB.NETで作業しています
更新: 式を Notepad++ にコピーすると、 が表示されます"?a"="a"
。エンコーディングと関係がありますか?
その式は正当な C# ではありません。
FuncEval (ウォッチ ウィンドウまたはイミディエイト ウィンドウでコードを実行する機能) はさまざまな問題を抱えた別のパーサーを使用するため、エラーは発生しません。
これらの問題は、このパーサーを Roslyn に置き換えることで最終的に修正される可能性があります。
FuncEval で使用される VB.Net パーサーが文字列をインターンしていないと思われます。
この式を FuncEval の外部 (LINQPad など) で実行すると、true が返されます。
最初の文字列に印刷できない文字があります。
?
テキストファイルが文字をサポートしていないエンコーディングを使用しているため、Notepad++ はそれを として表示します。
それが実際に何であるかを調べるには、このサイトに貼り付けてください。