编程语言中对string的设计


像C++中的string是可变的,java中就是不可变的,python中也是不可变的,这样设计有什么用意吗?在实际使用中各有什么好处?

系统设计 编程语言

全都是悲剧 12 years, 9 months ago

java和PY是动态语言,运行在虚拟机上,所以倾向于设计成不可变的。
主要考虑:
1.安全。比如java的string类是final的,防止重写length方法。
2.final的类可以在编译时进行内联优化,提高效率

月下D骑士 answered 12 years, 9 months ago

Your Answer