我使用c++大约只有一个月了,我想知道是否可以为字符串之类的东西创建自己的自定义函数。
例如,要查找字符串的大小,请执行stringname.size()
,但是,如果我想创建像stringname.customfunction()
这样的函数,该怎么做才能决定customfunction()
的作用。我想这样做,所以我可以创建一个.toLower()函数,该函数将整个字符串转换为更低的字符串。很抱歉,如果这是一个奇怪的问题,但是任何帮助将不胜感激。
最佳答案
您不能直接这样做,但应该可以通过从std::string
(或basic_string<char>
)继承来模仿此方法:
class mystring : public std::string
{
public:
void customfunction() { /* ... */ }
};
注意:但是,这样做不是一个好主意。除了link提及的@Cheers and hth. - Alf之外,Herb Sutter讨论了过多的wide interface of std::string并将其进一步扩大是一个坏主意。