所以我用来获取用户 Steam ID 的代码是:
CSteamID uid = SteamUser()->GetSteamID();
uint64 pid = uid.ConvertToUint64();
std::ostringstream sin;
sin << pid;
std::string s = sin.str();
return s.c_str();
这工作得很好,但是当用户没有登录 Steam 时,它会崩溃。
Access violation - code c0000005 (first/second chance not available)
Steam 是否提供了一种功能,我可以使用它在运行依赖于用户登录的代码之前检查用户是否登录?或者我可以在这里使用某种 try/catch block 来确保它不会中断并在用户未登录时返回 false?
最佳答案
感谢@Lightning Racis in Orbit .一个简单的 nullptr 检查修复了它。
if(SteamUser() == nullptr)
return false;
关于c++ - Steamworks 检查用户是否登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29854767/