我有以下代码
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);
第一个消息框什么都不显示
第二个消息框显示了一些东西
如果计数器值为 0,则两个消息框显示相同的结果,但如果计数器大于 0,则出现问题。
我认为问题在于new string(ptr, counter)
初始化
. 但我想知道为什么会发生这种情况的内部机制。