我有一个看起来像这样的类:
class MyClass {
public:
void drawText(const QString& rText);
void drawText(const std::string& rText);
};
我重载了该drawText()
方法,因为我想接受QString
以及std::string
.
但是当我写这样的东西时:
MyClass foo;
foo.drawText("Hello");
编译器抱怨调用drawText()
不明确。
我知道从 char 数组中,编译器无法在 aQString
或 a之间做出决定std::string
,因为两者都提供了合适的构造函数。
但是有没有办法让我确保用户可以drawText()
通过传递 aQString
或 astd::string
或 char 数组来使用该方法?