我正在尝试编写一些通用接口,这些接口可以在各种平台上使用,例如Arduino,Windows和Linux。但是不幸的是,在其中一些接口中,我必须返回一个字符串。因此,我选择了char const*
作为这些函数的返回类型。例如:
class Plugin {
virtual char const* uuid() const = 0;
}
但是这种方法会导致问题。例如,如果某些派生类使用Qt
库,则用户更愿意使用QString
来保留uuid
。但是在那种情况下,返回必填字段会出现问题。
我的问题是关于在这种情况下应返回哪种类型的建议?
如果没有其他内容,如何轻松地将std::string
或QString
或其他字符串类型转换为char const*
类型的字符串?