产生一个reference-counted String class 并不困难,但是必须注意许多细节。
比如 copy-on-write
Pointers,References,以及copy-on-Write
考虑以下代码:
String s1 = "hello";
char *p =&s1[1];
String s2 = s1;
*p ='x'; //同时修改了 s1 s2,这不是用户想要的
产生一个reference-counted String class 并不困难,但是必须注意许多细节。
比如 copy-on-write
Pointers,References,以及copy-on-Write
考虑以下代码:
String s1 = "hello";
char *p =&s1[1];
String s2 = s1;
*p ='x'; //同时修改了 s1 s2,这不是用户想要的