คำถามติดแท็ก coding-standards

3
ควรใช้ #define หรือ const int สำหรับค่าคงที่หรือไม่
Arduino เป็นลูกผสมที่แปลกประหลาดซึ่งมีการใช้งาน C ++ บางอย่างในโลกที่ฝังตัวซึ่งปกติแล้วคือสภาพแวดล้อม C แท้จริงแล้วรหัส Arduino จำนวนมากนั้นเป็น C มาก C มีการใช้แบบดั้งเดิม#defineสำหรับค่าคงที่ มีสาเหตุหลายประการ: คุณไม่สามารถตั้งค่าขนาดอาร์เรย์const intได้ คุณไม่สามารถใช้const intเป็นป้ายกำกับคำสั่งกรณี (แม้ว่าจะใช้งานได้ในคอมไพเลอร์บางตัว) คุณไม่สามารถเริ่มต้นกับคนอื่นconstconst คุณสามารถตรวจสอบคำถามนี้ใน StackOverflow เพื่อหาเหตุผลเพิ่มเติม ดังนั้นสิ่งที่เราควรใช้สำหรับ Arduino? ฉันมีแนวโน้มที่จะไป#defineแต่ฉันเห็นบางรหัสใช้constและบางคนใช้ผสมผสาน

8
ตัวแปรทั่วโลกเป็นสิ่งชั่วร้ายใน Arduino หรือไม่?
ฉันค่อนข้างใหม่ในการเขียนโปรแกรมและแนวทางปฏิบัติที่ดีที่สุดในการเขียนโค้ดที่ฉันอ่านได้อย่างมีประสิทธิภาพระบุว่ามีเหตุผลที่ดีเพียงเล็กน้อยที่จะใช้ตัวแปรทั่วโลก (หรือรหัสที่ดีที่สุดไม่มี globals เลย) ฉันพยายามอย่างดีที่สุดที่จะระลึกถึงสิ่งนี้ไว้ในใจเมื่อเขียนซอฟต์แวร์เพื่อสร้างอินเทอร์เฟซ Arduino ด้วยการ์ด SD พูดคุยกับคอมพิวเตอร์และเรียกใช้ตัวควบคุมมอเตอร์ ปัจจุบันฉันมี 46 globals สำหรับรหัส "ระดับเริ่มต้น" ประมาณ 1100 บรรทัด (ไม่มีบรรทัดที่มีมากกว่าหนึ่งการกระทำ) นี่เป็นอัตราส่วนที่ดีหรือฉันควรพิจารณาลดให้มากขึ้นหรือไม่ ฉันสามารถใช้วิธีปฏิบัติอะไรเพื่อลดจำนวนรอบต่อไปอีกบ้าง ฉันถามสิ่งนี้เพราะฉันกังวลเกี่ยวกับแนวทางปฏิบัติที่ดีที่สุดสำหรับการเข้ารหัสผลิตภัณฑ์ Arduino มากกว่าการเขียนโปรแกรมคอมพิวเตอร์โดยทั่วไป
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.