如何为字符串创建自己的点运算符函数?

时间:2014-09-11 06:08:18

标签: c++

我是学生。假设我希望能够执行my_string.reverse();.我不想看到反转字符串的实际代码,我只是想看看如何为字符串实现这个函数。

一个附带问题:为什么我从来没有看到过使用像int或char这样的类型的点运算符,这根本不可能?

1 个答案:

答案 0 :(得分:2)

您不能重置会员访问运营商;并且您无法将成员添加到已定义的类中。如果my_string的类型没有reverse成员,并且您无法(或者不想)在类定义中添加一个,那么您只需无法提供任何语法。

如果你想编写一个函数来操作类而不改变类定义,它必须是一个非成员函数,称为例如reverse(my_string)

  

为什么我从来没有看到这个点运算符与int或char等类型一起使用,这根本不可能?

不,不是。该语言仅为类类型定义该运算符,并且不允许它被重载。