本文使用的Unity版本為5.4.0f3
在網路上搜尋一下就可以找到中文的說明
流程:
- 建立一個文字檔,輸入-unsafe存檔
- 將檔名改成smcs,附檔名改成rsp
- 把smcs.rsp放入專案內的Assets資料夾內
- 重啟Unity
使用方法:
- 在function的宣告型態前加入關鍵字unsafe
- 在使用指標的範圍加入關鍵字fixed(指標宣告){實作功能}
程式碼範例:
// 將string清空(實際是將string的第一個位置塞入結尾字元)
public unsafe void clearString()
{
if (m_theString == null)
return;
m_length = 0;
fixed (char* pChar = m_theString)
pChar[0] = GlobalTypeDefine.CHAR_STRING_END;
}
// 設定string長度
private unsafe void stringTest(int length)
{
string theString = string.Empty;
fixed (char* pChar = theString)
{
int* pInt = (int*)pChar;
if (length < 0 || length > theString.Length)
return;
pInt[-1] = length; // 聽說string的index=-4(int*的-1)的位置紀錄著string長度的內容
}
}