我试图在C ++ / CLR托管包装器项目中使用非托管C ++ DLL库项目,但由于非托管项目使用<thread>
,托管项目不会构建:
error C1189: #error : <thread> is not supported when compiling with /clr or /clr:pure.
要明确:托管项目本身 NOT 使用<thread>
,只有引用的非托管
无论如何我可以在非托管项目中使用线程并且仍然可以与托管包装器项目正确交互吗? (更改项目性质以使用托管线程不是一种选择)
编辑:我收到-2。我不知道为什么,我找不到任何针对这个具体案例的内容,我不知道究竟是什么问题,但似乎托管项目也在编译非托管项目?
答案 0 :(得分:0)
非托管项目的包含文件是直接还是间接包含<thread>
?这可能是错误的原因。
尝试使非托管项目的接口头只定义接口,而不包括任何依赖于实现的包含文件。