ฉันใช้หลาย Accessors?

Accessors ปกติสร้างโดยใช้แมโคBEGIN_COLUMN_MAPและEND_COLUMN_MAP นี้ช่วยให้แน่ใจว่าMoveNextจะเรียกข้อมูลสำหรับคอลัมน์ที่ระบุทั้งหมดโดยอัตโนมัติ ในบางกรณี คุณอาจไม่ต้องการเรียกคอลัมน์ทั้งหมดในทุกการย้าย (ตัวอย่างเช่น ถ้าคอลัมน์หนึ่งประกอบด้วยรูปภาพขนาดใหญ่) ในกรณีนี้ คุณสามารถวางคอลัมน์หนึ่งที่เฉพาะเจาะจงในการเข้าถึงที่แยกต่างหาก และทำที่ตัวเข้าถึง nonautomatic ดังแสดงด้านล่าง เมื่อคุณเรียกใช้MoveNextรหัสนี้เรียกเฉพาะหมายเลขผลิตภัณฑ์โดยอัตโนมัติ ถ้าคุณต้องการให้ชื่อยาว คุณต้องเรียกGetDataอย่างชัดเจน ส่งตัวเข้าถึงหมายเลข (1 ในกรณีนี้) ในการเรียกข้อมูล?

คลาส CProduct
{
สาธารณะ:
   ยาว nProductID
   char szVeryLongName [2048];

BEGIN_ACCESSOR_MAP (CProduct, 2) / / Pass จำนวน accessors
      BEGIN_ACCESSOR (0, true) / / true =ตัวเข้าถึงโดยอัตโนมัติ
         COLUMN_ENTRY (1, nProductID)
      END_ACCESSOR()
      BEGIN_ACCESSOR (1, false) nbsp      / / false =ไม่มี autoaccessor
         COLUMN_ENTRY (2, szVeryLongName)
      END_ACCESSOR()
   END_ACCESSOR_MAP()
}(&N);

Index