不安全代码和指针(C# 编程指南) - C# 编程指南

返回介绍

不安全代码和指针(C# 编程指南)

发布于 2019-11-12 字数1458 浏览 786 评论 0

为了保持类型安全,默认情况下,C# 不支持指针算法。不过,通过使用 unsafe 关键字,可以定义可使用指针的不安全上下文。有关指针的更多信息,请参见主题指针类型。

说明:

在公共语言运行时 (CLR) 中,不安全代码是指无法验证的代码。C# 中的不安全代码不一定是危险的;只是其安全性无法由 CLR 进行验证的代码。因此,CLR 只对在完全受信任的程序集中的不安全代码执行操作。如果使用不安全代码,由您负责确保您的代码不会引起安全风险或指针错误。有关更多信息,请参见安全性(C# 编程指南)。

不安全代码概述

不安全代码具有下列属性:

  • 方法、类型和可被定义为不安全的代码块。

  • 在某些情况下,通过移除数组界限检查,不安全代码可提高应用程序的性能。

  • 当调用需要指针的本机函数时,需要使用不安全代码。

  • 使用不安全代码将引起安全风险和稳定性风险。

  • 在 C# 中,为了编译不安全代码,必须用 /unsafe 编译应用程序。

相关章节

有关更多信息,请参见:

  • 指针类型(C# 编程指南)

  • 固定大小的缓冲区(C# 编程指南)

  • 如何:使用指针复制字节数组(C# 编程指南)

  • 如何:使用 Windows ReadFile 函数(C# 编程指南)

  • unsafe(C# 参考)

  • “不安全代码”示例

C# 语言规范

有关更多信息,请参见 C# 语言规范中的以下各章节:

  • 18 不安全代码

  • B 3 不安全代码的语法扩展

请参见

概念

C# 编程指南

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

目前还没有任何评论,快来抢沙发吧!