แนวปฏิบัติที่ดีคือไม่ต้องกังวลเกี่ยวกับกลยุทธ์ส่วนหัวของคุณตราบใดที่มันรวบรวม
ส่วนหัวของรหัสของคุณเป็นเพียงกลุ่มของบรรทัดที่ไม่มีใครควรดูจนกว่าคุณจะได้รับข้อผิดพลาดในการคอมไพล์ที่แก้ไขได้อย่างง่ายดาย ฉันเข้าใจความต้องการในสไตล์ที่ 'ถูกต้อง' แต่ไม่สามารถอธิบายได้ว่าถูกต้องจริงๆ การรวมส่วนหัวสำหรับทุกคลาสมีแนวโน้มที่จะทำให้เกิดข้อผิดพลาดในการรวบรวมตามคำสั่งที่น่ารำคาญ แต่ข้อผิดพลาดในการคอมไพล์เหล่านั้นยังสะท้อนถึงปัญหาที่การเข้ารหัสอย่างระมัดระวังสามารถแก้ไขได้ (แม้ว่าเนื้อหานั้น
และใช่คุณจะมีปัญหาตามคำสั่งเหล่านั้นเมื่อคุณเริ่มเข้าสู่friend
ดินแดน
คุณสามารถคิดถึงปัญหาในสองกรณี
กรณีที่ 1: คุณมีคลาสเล็ก ๆ จำนวนหนึ่งโต้ตอบกันพูดน้อยกว่าหนึ่งโหล คุณเพิ่มลบและปรับเปลี่ยนส่วนหัวเหล่านี้เป็นประจำในลักษณะที่อาจส่งผลกระทบต่อการพึ่งพากัน นี่เป็นกรณีที่ตัวอย่างรหัสของคุณแนะนำ
ชุดของส่วนหัวมีขนาดเล็กพอที่จะไม่ซับซ้อนในการแก้ปัญหาใด ๆ ที่เกิดขึ้น ปัญหาที่ยากใด ๆ ได้รับการแก้ไขโดยเขียนส่วนหัวหนึ่งหรือสองส่วน ความกังวลเกี่ยวกับกลยุทธ์ส่วนหัวของคุณคือการแก้ปัญหาที่ไม่มีอยู่
กรณีที่ 2: คุณมีคลาสมากมาย บางคลาสแสดงถึงกระดูกสันหลังของโปรแกรมของคุณและการเขียนส่วนหัวใหม่จะบังคับให้คุณเขียน / คอมไพล์ใหม่อีกครั้งในฐานรหัสของคุณ คลาสอื่นใช้แบ็คโบนนี้เพื่อทำสิ่งต่าง ๆ ให้สำเร็จ สิ่งนี้แสดงถึงการตั้งค่าทางธุรกิจทั่วไป ส่วนหัวจะกระจายไปทั่วไดเรกทอรีและคุณจำชื่อทุกอย่างไม่สมจริง
วิธีแก้ปัญหา: ณ จุดนี้คุณต้องคิดถึงคลาสของคุณในกลุ่มโลจิคัลและรวบรวมกลุ่มเหล่านั้นไว้ในส่วนหัวที่ทำให้คุณไม่ต้องทำ#include
ซ้ำไปซ้ำมา สิ่งนี้ไม่เพียงทำให้ชีวิตง่ายขึ้น แต่ยังเป็นขั้นตอนที่จำเป็นในการใช้ประโยชน์จากส่วนหัวที่คอมไพล์แล้ว
คุณจบการ#include
เรียนที่คุณไม่ต้องการ แต่ใครจะสนใจ ?
ในกรณีนี้รหัสของคุณจะเป็น ...
#include <Graphics.hpp>
struct Entity {
Texture texture;
RenderObject render();
}