首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VC++ .Net Clr/.Net和Clr/纯

VC++ .Net Clr/.Net和Clr/纯
EN

Stack Overflow用户
提问于 2010-08-21 06:57:18
回答 2查看 2.1K关注 0票数 3

在VC++ .Net中,Clr/Safe (/clr:safe)和Clr/Pure (/clr:pure)意味着什么?

EN

回答 2

Stack Overflow用户

发布于 2010-08-21 06:59:00

来自文档

/clr:pure生成没有本机可执行代码的(MSIL)-only输出文件。但是,它可以包含编译为MSIL的本机类型。 /clr:safe生成一个只使用MSIL(没有本机可执行代码)的可验证输出文件./clr:safe支持验证诊断(PEVerify Tool (Peverify.exe))。

票数 3
EN

Stack Overflow用户

发布于 2017-12-17 07:24:20

我觉得这还不够。从另一个答案看来,这只是一种类型检查。从这位医生看来,这远远不止这些。

当使用/clr (非/clr:pure/clr:safe)且不使用__clrcall时,函数的地址始终返回本机入口点函数的地址。当使用__clrcall时,本机入口点函数不会被创建,因此您将得到托管函数的地址,而不是入口点thunk函数。有关更多信息,请参见双击。 /clr (公共语言运行时编译)意味着所有函数和函数指针都是__clrcall,编译器将不允许除__clrcall以外的任何其他标记。当使用/clr:pure时,只能在函数指针和外部声明中指定__clrcall

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3536692

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档