日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

unity3d消除你不想要的黄色警告

發布時間:2023/12/14 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 unity3d消除你不想要的黄色警告 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
譯者注:此方法并不一定適合所有場合,大家可以當作參考。

?


警告在任何一種編譯型語言中都非常非常的重要:它們告知你計算機已經檢查了你的代碼,而且意識到你“很可能”創造了一個bug;它們甚至提供一些關于這個bug會是什么的信息。

但是計算機又不是很確定它所警告的是不是bug——如果是確定的,那它就是一個編譯錯誤(紅色的)了。所以,在Unity中,警告是黃色的,而且是“不確定的”。但是,在有些情況下,你明明知道不是bug卻要報出警告,這是非常惱人的。絕大多數集成開發環境都能讓你設置警告的開與關,Unity卻做不了。。。這里就是講我們怎么解決這個問題。

注:全局的警告關閉技術可用在很多地方,比如自定義工程范圍內的#defines——更多信息在:Unity Forum thread on SMCS etc

確保你真的要這樣做? ?? ?? ?? ?? ?? ?? ???

如果你知道你在對編譯警告做什么,跳過這一節。

其余的每一個人:請三思。一個警告意味出現了下面的某種情況:
  • ? ?? ?你有一個寫到一半的類或者算法,所以有一些未被使用的代碼,等等。這不是BUG。
  • ? ?? ?你在以一種不尋常的方式使用編程語言。有可能是個BUG
? ?? ?? ? 1.如果該不尋常使用是個意外:很有可能是個BUG
? ?? ?? ? 2.如果該不尋常使用是深思熟慮的,專業級別的:不是BUG
  • ? ?? ?你本要敲一個變量,卻意外地寫成了另外一個變量的名字。嚴重的,常見的BUG
(特別要注意最后一條:這是最糟糕的bug,你看上一百遍也看不出有哪里是“錯誤的”,而且計算機也報告是語法正確的!)

所以,即使很多的警告是“誤報”(本來就不是bug,而且你也知道),但也有很多是“警告對”的,而且它們是你抵御某些險惡bug的最后防線。要在個案的基礎上對待每一個警告!


選項1:在所有地方關閉警告
作為一個資深的C/C++程序員,這對我非常有用。我是這樣寫代碼的:


基于C語言和類C語言的內在功能,第4行的速寫“;//”就能讓你開啟/關閉一行代碼,只需敲4下鍵盤。在現代的集成開發環境中,通常有更好的方法實現該效果,但它不失為一個小而有效的例子。?
這個代碼在Unity控制臺觸發了一個警告:


對于這種情況的警告,我們要在所有的地方關閉它;因為這種寫法是我正在使用的一種深思熟慮的技術,所以我不需要(或者說不想要)這種警告。我想到了這種警告的后果:它以為是你意外地在“if”語句的同一行寫了一個分號。我范這種錯誤,那是快15年前的事了;我有信心在短期內不會再范這樣的錯誤。

1.?? ?? ?創建文件“smcs.rsp” 2.?? ?? ?保存文件到你工程的Assets文件下面 3.?? ?? ?一行寫一個你要廢止的警告(寫法看下面) 4.?? ?? ?修改任意一個文件,Unity會重新現場加載并遵從你的新設置
smcs.rsp的內容: -nowarn: 1234

“1234”就是Unity控制臺里出現在警告消息里的那個數字——在我的案例中,我們最后得到的是:

所以在文件里,我寫上:
-nowarn:0642?

注:這只作用于游戲腳本。如果對編輯器腳本做這樣的操作,你要使用另外一個文件——gmcs.rsp


選項2:只在一個文件中關閉警告 舉個例子,你在使用一個新的游戲功能,而且正在做調整。你有一堆正在調整的變量,有時在代碼中用到,有時又不用到。你會得到這個惱人的警告:

只對這個文件,你要忽略這個特定的警告。當你完成了這個長時段的調整,你又要重啟這個警告。
1.? ?? ???來到文件的最頂端
2.? ?? ???對每一個你要關閉的警告添加一行#pragma語句:
#pragma warning disable 1234;
再一次,這個數字是Unity控制臺里出現在字母“CS”之后的任何數字。在我的例子里,是0219。


選項3:在單行代碼上關閉警告
(或者是一整塊代碼)?
這跟選項2類似,除了:
1.? ?? ? 找到你要關閉警告的語句行
2.? ?? ? 在代碼行前,為每一個警告添加一行關閉警告的#pragma語句
3.? ?? ? 在代碼行后,為每一個警告添加一行開啟警告的#pragma語句

原文作者:adam
原文出處:http://t-machine.org/index.php/2016/04/16/unity3d-remove-yellow-warnings-you-dont-need-unitytips/

總結

以上是生活随笔為你收集整理的unity3d消除你不想要的黄色警告的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。