Unity3D 使用C#指針unsafe


Unsafe code requires the `unsafe' command line option to be specified

在Unity開發中,如果涉及到指針的使用,需要自己定義預處理器指令。控制在編譯時可以使用哪些功能代碼,比如UNSAFE。為此,必須添加帶有其他指令的文本文件至“資源 (Assets/)” 文件夾下。文件的名稱取決於使用的語言,擴展名為.rsp

對應關系如下:

C#                           <Project Path>/Assets/smcs.rsp

C# - Editor Scripts  <Project Path>/Assets/gmcs.rsp

UnityScript              <Project Path>/Assets/us.rsp

Boo                          <Project Path>/Assets/boo.rsp

例如,如果在smcs.rsp文件中包含獨立行 "-define:UNITY_DEBUG",定義的 UNITY_DEBUG 將作為 C# 腳本的全局定義,編輯器腳本除外。

 

每次更改 .rsp 文件,都需要重新編譯才能保證有效。只需更新或重新導入單個腳本 (.js, .cs or .boo) 文件即可。

 

如果只需要修改全局定義,應使用播放器設置 (Player Settings) 中的腳本定義符號 (Scripting Define Symbols),因為這將覆蓋所有編譯器。若選擇 .rsp 文件,就必須為 Unity 使用的每個編譯器提供一個文件,並且將無法了解何時使用一個或另一個編譯器。

.rsp 文件的使用在 smcs 應用程序(包含在編輯器安裝文件夾中)的幫助部分有詳細說明。可以運行 "smcs -help" 了解更多信息。同時,請務必記住,.rsp 文件必須與調用的編譯器匹配。例如,如果針對網絡播放器,smcs 將與 smcs.rsp 同時使用;如果針對獨立播放器,gmcs 將與 gmcs.rsp 同時使用;如果針對 MS 編譯器,csc 將與 csc.rsp 同時使用


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM