结合 std::wstring 和函数
Combine std::wstring and function
我正在用 c++ 在 SFML 2.1 中创建文本(这并不重要)。
设置文本字符串如下所示:text.setString("something");
好的,但是因为我的游戏语言是波兰语,所以我必须输入一些字符,如ą,ż,ł,ś,ć等,这些字符在我的游戏的ASCII编码中不受"支持"。
Iv'e想出了这个解决方案:text.setString(L"śomęthińg");
但是当您尝试组合来自另一个函数的 wstring 和字符串时,会出现问题。例如:
text.setString(L"Name: " + PlayerName() );
我尝试将其转换为字符串或创建临时变量,但要么不起作用,要么它删除了这个"特殊字符"......
完整示例:
std::string PlayerName()
{
std::string name = "John";
return name;
}
int main()
{
sf::Text hello;
hello.setString(L"Hello " + PlayerName() + L", how are you?");
//I need to use L" "
window.draw(hello);
}
知道吗?
好的,我知道了!
正如@MooingDuck所说,SFML有自己的字符串类型,在这类问题中非常强大。
我这样做的方式:
std::string PlayerName()
{
std::string name = "John";
return name;
}
int main()
{
sf::String helloText = L"Hello ";
helloText += PlayerName();
helloText += L", how are you?";
sf::Text hello;
hello.setString(helloText);
window.draw(hello);
}
非常感谢您的帮助!
相关文章:
- "error: no matching function for call to"构造函数错误
- 什么时候调用组成单元对象的析构函数
- 继承函数的重载解析
- 为什么随机数生成器不在void函数中随机化数字,而在main函数中随机化
- C++模板来检查友元函数的存在
- 递归函数计算序列中的平方和(并输出过程)
- 对RValue对象调用的LValue ref限定成员函数
- C++17复制构造函数,在std::unordereded_map上进行深度复制
- 将数组作为参数传递给函数安全吗?作为第三方职能部门,可以探索他们想要的之外的其他元素
- 在C++STL中是否有Polyval(Matlab函数)等价物?
- 为什么使用 "this" 指针调用派生成员函数?
- 使用字符串构造函数从wstring转换为字符串时,是否没有可能的数据丢失
- 结合 std::wstring 和函数
- C++ 对 MBCS 使用 std::string 函数,对 UTF-16 使用 std::wstring 函数
- 在WCHAR*和wstring之间转换,而不使用构造函数
- 是否应该将这些在字符串和wstring之间转换的函数仅实现为标头
- 如何创建一个使用wstring的派生类,并调用一个使用字符串的基类构造函数
- 在Boost Python中使用一个接受std::wstring参数的c++函数来使用Unicode
- 在WinAPI函数中使用std::wstring:并非所有文本都已发送
- 函数返回std::wstring = NULL;