私は次のコードを持っています
char ptr=new char();
int counter = 1;
string s = new System.String(ptr, counter);
// does not show something
MessageBox.Show(s+"Something");
//shows something
MessageBox.Show("Something" + s);
最初のメッセージボックスには何も表示されません
2番目のメッセージボックスには何かが表示されます
カウンター値が0の場合、両方のメッセージボックスに同じ結果が表示されますが、カウンターが0より大きい場合、問題が発生します。
問題は初期化にあると思いnew string(ptr, counter)
ます
。しかし、なぜこれが発生するのかという内部メカニズムを知りたいのです。