การประกาศตัวแปรส่วนกลางและท้องถิ่นใน VEXcode Pro V5

สำหรับตัวแปรร่วม

คีย์: หลีกเลี่ยงการใช้โกลบอล

การใช้ตัวแปรโกลบอลอย่างไม่เหมาะสมจะส่งผลให้การออกแบบโปรแกรมไม่ดี ต่อไปนี้คือผลข้างเคียงที่ไม่ดีบางส่วนที่มาจากการใช้ตัวแปรส่วนกลางอย่างไม่เหมาะสม:

  • ทำลายความเป็นโมดูล
  • รหัสรถ
  • รหัสที่ยุ่งและสับสนมาก - aka รหัสสปาเก็ตตี้
  • ยากที่จะแก้ไขและบำรุงรักษา
  • ข้อผิดพลาดง่าย

นี่คือตัวแปรระดับโลกที่ดีบางส่วน:

int LeftEyePort = PORT1;
int RightEyePort = PORT2;
ลอยเส้นผ่านศูนย์กลางล้อ = 10.25;	
ลอย EncPerCM = 360.0 / (เส้นผ่านศูนย์กลางล้อ * PI);

int หลัก( ) {
....
}

เว้นแต่หุ่นยนต์ของคุณสามารถเปลี่ยนเส้นผ่านศูนย์กลางล้อหรือประเภทของอุปกรณ์ที่เชื่อมต่อกับพอร์ตในขณะที่กำลังทำงานอยู่ ก็สมเหตุสมผลที่จะประกาศให้เป็นตัวแปรร่วม const

ตัวอย่างเช่น:

const int LeftEyePort = PORT1;
cont int RightEyePort = PORT2;
const float WheelDiameter = 10.25;	
const float EncPerCM = 360.0 / (เส้นผ่านศูนย์กลางล้อ * PI);

สำหรับตัวแปรท้องถิ่น

  • ลองจำกัดการใช้ตัวอักษรตัวเดียวสำหรับตัวนับแบบง่าย "ที่แปลเป็นภาษาท้องถิ่น"

เช่น

สำหรับ (int i=0 ; i< 10; i++) {
          .... 
     }

อย่าใช้ “i” เพื่อแสดงบางสิ่งที่มีบริบทที่สำคัญนอกเหนือจากตัวนับธรรมดา

เช่น อย่าใช้ "e" เพื่อแสดงค่าตัวเข้ารหัส

  • ควรเกี่ยวข้องกับสิ่งที่เป็นตัวแทน เช่น ใช้ "totalEncoder" เพื่อแสดงค่าตัวเข้ารหัสทั้งหมดแทน เช่น X
  • นำหน้าตัวแปรด้วยประเภทข้อมูล เช่น:
int iValue;
ลอย fValue;  
dValue สองเท่า;
  • อย่าใช้เครื่องหมาย “_” นำหน้า ตามแบบแผน ตัวแปรที่ขึ้นต้นด้วย “_” จะถูกใช้เพื่อวัตถุประสงค์พิเศษบางอย่าง เช่น “คำสั่ง” โครงสร้างคำสั่งใช้เพื่อระบุวิธีที่คอมไพลเลอร์ควรประมวลผลอินพุต เรื่องนี้จะมีการหารือในบทความอื่น หากคุณไม่คุ้นเคยกับคำสั่ง เราขอแนะนำให้ “ไม่” ใช้ “_” นำหน้าเป็นส่วนหนึ่งของชื่อตัวแปรของคุณ
  • เพิ่มความสามารถในการอ่านสูงสุด:
    • ใช้รูปแบบอูฐสำหรับชื่อยาว เช่น encoderPerCM, encPerRotation โปรแกรมเมอร์บางคนชอบใช้ “_” เช่น encoder_per_cm

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

Last Updated: