简短的答案是:“保持语言简单”。
作为一种语言运行,仅允许在同一程序包中的类型上定义方法,但是由于
string(像其他内置类型一样)是在语言本身中实现的,因此无法在不使语言/编译器复杂化的情况下向其中添加方法。
。
也有一部分是因为Go的设计方式。
有关更多信息,请参阅Rob Pike(Go的创建者之一)发送的邮件:
Go没有针对基本类型的方法,因为该语言的设计人员不希望为基本类型定义方法,部分原因是因为它们可能会对接口产生连锁反应。我相信我们大家仍然对这一决定感到满意。其他人可能会有不同的感觉。
-抢
而这一次太:
我们根本不了解其中的含义。没有什么可解释的。Go的设计非常谨慎。
按照这种方式,查看字符串库的大小。如安德鲁所说,在基本类型上使用所有这些功能方法会使该语言复杂化。如果通过可维护,更容易扩展和更灵活的库实现语言的功能,为什么还要使语言复杂化呢?语言要简单得多。
-抢
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)