0


【Unity3D日常BUG】Unity3D中出现“unsafe code 不安全的代码”的错误时的解决方法

推荐阅读

  • CSDN主页
  • GitHub开源地址
  • Unity3D插件分享
  • 简书地址
  • 我的个人博客
  • QQ群:1040082875

大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。

一、前言

今天遇到一个错误,就是提示使用了不安全的代码,如下图所示:
在这里插入图片描述
这应该是插件或者自己脚本中使用了不安全unsafe的代码。

二、什么是unsafe

2-1、什么是unsafe不安全代码

默认情况下,C#是不支持 指针 的,unsafe 关键词用于在C#表示不安全的上下文,如果想要在C#中进行任何和指针相关的操作,就必须配合unsafe关键词使用。

在公共语言运行时(CLR)中,不安全代码是指无法验证的代码。

C# 中的不安全代码不一定是危险的,只是 CLR 无法验证该代码的安全性。因此,CLR 将仅执行完全信任的程序集中的不安全代码。

如果你使用不安全代码,你应该负责确保代码不会引发安全风险或指针错误。

2-2、解决报错

在菜单栏找到

File→Build Setting→Player Setting→Other Setting

下的Allow unsafe Code选项:

在这里插入图片描述
勾选该选项后,我们就可以在Unity中使用unsafe关键词了。

2-3、如何使用unsafe

用于修饰变量,给变量用上指针:

publicclassTestunfofa:MonoBehaviour{voidStart(){Fun();}privateunsafevoidFun(){int i =3;int* x =&i;
        Debug.Log((int)x);}}

注意:unsafe 的使用虽然能让我们在C#中使用指针,但是会存在安全风险和稳定性风险,如果没有特殊需求,请尽量避免在C#中使用 unsafe。

三、后记

你的点赞就是对博主的支持,有问题记得留言:

博主主页有联系方式。

在这里插入图片描述

博主还有跟多宝藏文章等待你的发掘哦:
专栏方向简介Unity3D开发小游戏小游戏开发教程分享一些使用Unity3D引擎开发的小游戏,分享一些制作小游戏的教程。Unity3D从入门到进阶入门从自学Unity中获取灵感,总结从零开始学习Unity的路线,有C#和Unity的知识。Unity3D之UGUIUGUIUnity的UI系统UGUI全解析,从UGUI的基础控件开始讲起,然后将UGUI的原理,UGUI的使用全面教学。Unity3D之读取数据文件读取使用Unity3D读取txt文档、json文档、xml文档、csv文档、Excel文档。Unity3D之数据集合数据集合数组集合:数组、List、字典、堆栈、链表等数据集合知识分享。Unity3D之VR/AR(虚拟仿真)开发虚拟仿真总结博主工作常见的虚拟仿真需求进行案例讲解。Unity3D之插件插件主要分享在Unity开发中用到的一些插件使用方法,插件介绍等Unity3D之日常开发日常记录主要是博主日常开发中用到的,用到的方法技巧,开发思路,代码分享等Unity3D之日常BUG日常记录记录在使用Unity3D编辑器开发项目过程中,遇到的BUG和坑,让后来人可以有些参考。

标签: bug 安全 unity

本文转载自: https://blog.csdn.net/q764424567/article/details/127083297
版权归原作者 恬静的小魔龙 所有, 如有侵权,请联系我们删除。

“【Unity3D日常BUG】Unity3D中出现“unsafe code 不安全的代码”的错误时的解决方法”的评论:

还没有评论