我将在大约3周内开始游戏,我真的希望游戏至少可以在另一个平台(Linux,MacOS)上运行,但我的团队认为这需要大量工作。我对此很满意,但想知道我应该注意哪些内容,这些东西将不会移植到linux(除了Windows特定的API,如DirectXsound)?

我一直在网上阅读,像sprintf_s这样的Windows“_s”函数似乎仅在Windows上存在;这是正确的还是在Linux上也实现了?

最佳答案

不,标准的gcc库中未实现_s函数。
(至少,为“sprintf_s”添加包含文件没有任何效果。)

值得一看的是像boostapr这样的跨平台库来完成一些繁重的工作。

要寻找的特定事物的样本:

  • 输入/输出(DirectX/SDL/OpenGL)
  • Win32/windows.h功能(CreateThread等)
  • 在UI上使用Windows控件
  • 同步原语(关键部分,事件)
  • 文件路径(目录分隔符,根名称)
  • 宽字符实现(在Windows上为16位,在Linux上为32位)
  • 在Linux(CString等)上不支持MFC

    关于c++ - 跨平台游戏开发要寻找什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/721548/

  • 10-12 20:44