在 VEXcode Pro V5 中宣告全域變數和局部變數

The VEX Visual Studio Code Extension has replaced VEXcode Pro V5, which is now end-of-life.

VEXcode Blocks and VEXcode Text remain actively developed and supported for all VEX platforms.

對於全域變數

關鍵:避免使用全域。

全域變數使用不當會導致程式設計不佳。 以下是由於全域變數使用不當而產生的一些不良副作用:

  • 打破模組化
  • 有缺陷的程式碼
  • 凌亂且非常混亂的程式碼 – 又名 義大利麵代碼
  • 調試和維護困難
  • 容易出錯

以下是一些好的全域變數:

int LeftEyePort = PORT1;
int RightEyePort = PORT2;
浮動輪直徑=10.25;	
float EncPerCM = 360.0 / (輪徑 * PI);

int main( ) {
....
}

除非您的機器人可以在運行時更改輪子直徑或連接到連接埠的設備類型,否則將它們聲明為 const 全域變數是有意義的。

例如:

常數 int LeftEyePort = PORT1;
const int RightEyePort = PORT2;
常量浮動輪直徑 = 10.25;	
const float EncPerCM = 360.0 / (輪徑 * PI);

對於局部變數

  • 嘗試限制“本地化”簡單計數器使用單個字母。

例如

for ( int i=0 ; i< 10; i++) {
          .... 
     }

除了簡單的計數器之外,不要使用“i”來表示具有重要上下文的內容。

例如,不要使用“e”來表示編碼器值。

  • 應該與其所代表的內容有關;例如,使用“totalEncoder”來表示總編碼器值,而不是 X。
  • 在變數前面加上資料類型前綴,例如:
int iValue;
浮點數 fValue;  
雙 dValue;
  • 不要使用前導“_”。 按照慣例,以“_”為前綴的變數用於某些非常特殊的目的,例如“指令”。 指令構造用於指定編譯器應如何處理其輸入。 這將在另一篇文章中討論。 如果您不熟悉指令,建議您「不要」使用前導「_」作為變數名稱的一部分。
  • 最大化可讀性:
    • 對於長名稱,請使用Camel 樣式,例如encoderPerCM、encPerRotation。 有些程式設計師喜歡使用“_”,例如encoder_per_cm。

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: