在VC++ .Net中,Clr/Safe(/clr:safe
)和Clr/Pure(/clr:pure
)的含义是什么?VC++ .Net Clr/Safe和Clr/Pure
2
A
回答
3
从doc:
/CLR:纯产生一个微软 中间语言(MSIL)不具有天然 可执行代码-only 输出文件。不过,它可以包含编译为MSIL的本机类型。
/CLR:安全产生MSIL只(无 本地可执行代码),可验证 输出文件。/clr:安全启用 验证诊断(PEVerify 工具(Peverify.exe))。
0
我不认为这是足够的信息。从另一个答案看来,这只是类型检查。从this doc看来,它远不止于此。
当
/clr
(未/clr:pure
或/clr:safe
)用于和__clrcall
未使用,取一个函数的地址总是返回本地入口点函数的地址。使用__clrcall
时,不会创建原生入口点函数,因此您将获得托管函数的地址,而不是入口点thunk函数。有关更多信息,请参阅Double Thunking。
/clr
(公共语言运行库编译)意味着所有的函数和函数指针是__clrcall
,编译器将不允许compiland内的功能将被标记比__clrcall
其他任何东西。当使用/ clr:pure时,只能在函数指针和外部声明中指定__clrcall
。
相关问题
- 1. 在vc#中的蓝牙连接.net
- 2. VC++ WebBrowser控件.Net依赖关系
- 3. 用于.NET,VC 6.0和VB 6.0的自动构建工具
- 4. VC++和MFC应用
- 5. VC++和MFC应用
- 6. pin_ptr和interior_ptr在vC++
- 7. Qt和VC++ 6.0 IDE?
- 8. Opencv和VC++的问题
- 9. VC++ - 字符串和BSTR
- 10. 目标vc和源vc有什么区别?
- 11. 妙传VC++到VC#一个ULONG64阵列和释放内存
- 12. VC#2017年的RC和VC#2008的连接字符串错误
- 13. .NET框架是否需要运行面向.NET的VC++应用程序?
- 14. 在VC++
- 15. 使用C++或VC++进行套接字编程net
- 16. Windows API和.net语言
- 17. 从VC
- 18. MS VC++如何构建DLL,而不需要vc redist
- 19. VC++ 6.0(或VC++ 2008)的简短枚举?
- 20. VC++环境
- 21. VC++的编译时间和性能
- 22. 在vC++中合并类和对话框
- 23. 音频录制和播放VC++
- 24. 错误LNK2019和LNK2028在VC++ Express 2008的
- 25. Mockito vc JMockit和依赖注入
- 26. 使用Qt,VC++和OpenCV库时出错
- 27. 如何在VC++中使用_W64和__w64?
- 28. 在VC++中写入和从XML读取
- 29. Win64中的犰狳(LAPACK和BLAS) - VC++ 2010
- 30. 在VC++中正确实现DLL和libs
这是否阻止我从我的c + + cli程序集中访问DirectX或win32代码? – Gusdor 2011-02-07 09:21:57
我也想知道,如果这些只是类型检查,或者如果这些标题放在标题中标识为纯粹或安全? – 2017-12-17 07:17:22