【问题标题】:get error because of HRESULT , LARGE_INTEGER and DWORD in linux由于 linux 中的 HRESULT 、 LARGE_INTEGER 和 DWORD 导致错误
【发布时间】:2013-07-18 04:20:06
【问题描述】:

我有一个 CUDA VIDEO ENCODING 的示例代码,它最初是为 Windows 编写的,在准备 Make 文件并尝试编译它之后,由于 HRESULT 、 LARGE_INTEGER 和 DWORD 数据类型是 Windows 特有的,所以会出错。我该如何克服这个问题?

LARGE_INTEGER m_liUserTime0, m_liKernelTime0;
DWORD m_dwStartTime;

有什么替代方法吗?

【问题讨论】:

    标签: c++ c linux cuda video-encoding


    【解决方案1】:

    您可以自己定义这些类型:

    typedef unsigned long long LARGE_INTEGER;
    typedef unsigned long DWORD;
    typedef long HRESULT;
    

    【讨论】:

    • @RetiredNinja - 但是如果您不需要将其用作结构(即HighPartLowPartQuadPart),上述内容是否就足够了?
    • 因为LARGE_INTEGER 是唯一的 Windows API,我认为它不太可能用于 linux 中的任何内容,但如果是这种情况,那么肯定最好在不编译时排除该平台特定的代码对于 Windows。我想我们会看看是否有一个新问题“嘿,我如何在几天后在 linux 中实现(Windows API 特定功能)。:)
    猜你喜欢
    • 2013-11-02
    • 1970-01-01
    • 2017-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多