C++ 托管扩展参考

C++ 托管扩展包括以下参考材料:

关键字

以下关键字实现 C++ 托管扩展的各种功能。

注意   所有代码示例必须用 /clr 编译器选项编译。
关键字说明
__abstract声明不能直接实例化的类。
__box在公共语言运行库堆上创建 __value 类的副本。
__delegate声明对托管类的唯一方法(函数指针)的引用。
__event声明托管类的事件方法。
__finally声明与 try 块关联的 finally 块。
__gc声明 gc 类型。
__identifier使 C++ 关键字可以作为标识符使用。
__interface声明接口。
__nogc声明不经过垃圾回收的本机 C++ 类。
__pin防止托管类的对象或嵌入对象在垃圾回收期间被公共语言运行库移动。
__property声明托管类的属性成员。
public、protectedprivate确定指定类型和方法在程序集外的可访问性。
__sealed防止 __gc 类成为基类,或防止方法被派生类中的方法重写。
__try_cast执行指定的转换,或者在转换失败时引发异常。
__typeof返回给定类型的 System::Type
__value声明值类型。

属性

属性说明
attribute创建用户定义的属性。

杂注

杂注说明
managed, unmanaged确定代码是编译为 MSIL 还是非托管代码。

预处理器指令

指令说明
#using将元数据导入托管应用程序。有关更多信息,请参见托管扩展规范中的 21.4 使用 #using 导入元数据或 21.5 二进制头形式的元数据。

编译器选项

选项说明
/AI指定在解析传递给 #using 指令的文件引用时搜索的目录。
/clr将 C++ 和 C++ 托管扩展源代码编译为 MSIL。
/FU强制使用文件名,就如同该文件名已传递给 #using 指令一样。

链接器选项

选项说明
/ASSEMBLYMODULE将 MSIL 模块添加到项目的程序集。
/ASSEMBLYRESOURCE将链接从项目添加到托管资源。
/NOASSEMBLY创建本身并不是程序集但可以作为程序集一部分的 MSIL 模块
请参见
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值