Mar*_*las 2 language-agnostic string
我有点理解String Builder类的动机,但是所有语言都有一个吗?他们应该吗?我正在考虑PHP,Perl,Python和Ruby.我知道C#和Java.如果其他人不这样做,为什么不呢?他们没有遭受同样的实施问题吗?或者他们不关心?
并非所有语言都有字符串构建器.
例如,C甚至没有字符串.
在C++中,std :: strings是可变的 - 它们可以被更改,因此不需要单独的字符串构建器类.
在C#(和.NET的其余部分)中,字符串是不可变的 - 它们不能被更改,只能被替换.这导致了导致需要StringBuilder的问题.
从技术上讲,.NET字符串是假装为值类型的引用类型.这样做是为了使它们更像原生类型(int,float,decimal).