我知道字符串一旦申明就不可改变,我举例说明下我的问题:
string str = "Hello,World!";
str = "abc";
str = str.Replace("b","d");
已经知道开始的时候把"Hello,World!"赋给了str,而后又把"abc“赋给了str,期间并没有将"Hello,World!"给替换掉,而是重新开辟了一个空间里面存着"abc",然后将这个空间赋给str,也就是让str指向这个空间的地址,此时"Hello,World!"还是存在的,之后替换b为d也是同样的道理,那么我就有个问题,就是说如果在改变了str的指向(也就是把"abc"赋给str后),既然"Hello,World!"还存在,那么如果我还想去访问"Hello,World!",怎么办,或者说我还能不能访问"Hello,World!"。 |
|