我是学生。假设我希望能够执行my_string.reverse();.我不想看到反转字符串的实际代码,我只是想看看如何为字符串实现这个函数。
一个附带问题:为什么我从来没有看到过使用像int或char这样的类型的点运算符,这根本不可能?
答案 0 :(得分:2)
您不能重置会员访问运营商;并且您无法将成员添加到已定义的类中。如果my_string
的类型没有reverse
成员,并且您无法(或者不想)在类定义中添加一个,那么您只需无法提供任何语法。
如果你想编写一个函数来操作类而不改变类定义,它必须是一个非成员函数,称为例如reverse(my_string)
。
为什么我从来没有看到这个点运算符与int或char等类型一起使用,这根本不可能?
不,不是。该语言仅为类类型定义该运算符,并且不允许它被重载。