我正在用 java 制作游戏,我想使用用 c++ 编码的引擎 ( olcConsoleGameEngine ),但我想用 java 制作它。我可以理解 C++ 的大部分编码方式,但我被困在特定行 (198):olcSprite(std::wstring sFile)
。
class olcSprite
{
public:
olcSprite()
{
}
olcSprite(int w, int h)
{
Create(w, h);
}
olcSprite(std::wstring sFile) // line 198
{
if (!Load(sFile))
Create(8, 8);
}
//...
我查了一下,发现 std::function
是一个“通用多态函数包装器”,根据https://en.cppreference.com/w/cpp/utility/functional/function 。但我不确定这意味着什么,或者如何在 java 中专门实现我的案例的等效项。如果有人可以帮助我更好地理解这一点或为我指明正确的方向,我将非常感激。
最佳答案
当你看here时你发现:
std::wstring
typedef basic_string<wchar_t> wstring;
Wide string
String class for wide characters.
换句话说:这是一个简单接受字符串的构造函数,该字符串代表一个文件名,然后用于执行文件系统操作。
这里唯一“特殊”的东西,它是一个带有“宽字符”的字符串,参见there 。
不过,您的代码都没有使用 std::function 。这就是全部内容,这是 olcSprite
的构造函数。可能从光盘读取“ Sprite ”字节的类。
关于java - java 中的 std::wstring sFile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59293666/