โมฆะ GetNextAssoc ( POSITIONamp rNextPosition, CString และ rKey, CObject * & rValue ) const;
พารามิเตอร์
rNextPosition
ระบุการอ้างอิงตำแหน่งค่าที่ส่งกลับ โดยการโทรGetNextAssocหรือGetStartPositionที่ก่อนหน้านี้?
rKey
ระบุคีย์การส่งกลับขององค์ประกอบดึงข้อมูล (สตริง)?
rValue
ระบุค่าส่งกลับขององค์ประกอบดึงข้อมูล (ตัวชี้CObject ) ดูหมายเหตุสำหรับข้อมูลเพิ่มเติมเกี่ยวกับพารามิเตอร์นี้?
หมายเหตุ
ดึงการแมปองค์ประกอบที่rNextPositionแล้วอัพเดrNextPositionเพื่ออ้างถึงองค์ประกอบถัดไปในแผนผัง ฟังก์ชันนี้เป็นประโยชน์สำหรับการวนผ่านองค์ประกอบทั้งหมดในแผนที่ หมายเหตุลำดับตำแหน่งว่าไม่จำเป็นต้องเหมือนกับลำดับค่าคีย์?
ถ้า สุดท้ายในแมปองค์ประกอบดึงข้อมูล แล้วค่าใหม่ของrNextPositionถูกตั้งค่าเป็นNULL?
สำหรับพารามิเตอร์rValueให้แน่ใจว่าขว้างชนิดวัตถุของคุณไปยังCObject * แอมป์ซึ่งเป็นสิ่งที่คอมไพเลอร์ต้อง ดังที่แสดงในตัวอย่างดังต่อไปนี้(&A):
CMyObject * ob
แผนที่GetNextAssoc (pos คีย์, (CObject * แอมป์;) ob)(&A)
นี่ไม่ใช่จริงของGetNextAssocสำหรับแผนที่ที่ยึดตามแม่แบบ?
ตัวอย่าง
ดูรายชื่อของCObList::CObList CAge
ชั้นที่ใช้ในตัวอย่างของคอลเลกชันทั้งหมด?
/ / ตัวอย่างสำหรับ CMapStringToOb::GetNextAssoc และ CMapStringToOb::GetStartPosition
แผนผัง CMapStringToOb
ตำแหน่ง pos
CString กุญแจ
กรง * pa
แผนที่SetAt ("เลิศ" กรงใหม่ (13));
แผนที่SetAt ("ลิซ่า" กรงใหม่ (11));
แผนที่SetAt ("โฮเมอร์" กรงใหม่ (36));
แผนที่SetAt ("Marge" กรงใหม่ (35));
/ / ทำซ้ำผ่านแผนที่ทั้งหมด การถ่ายโอนข้อมูลทั้งชื่อและอายุ
สำหรับ (pos =แผนที่GetStartPosition() pos ! = NULL )
{
แผนที่GetNextAssoc (pos คีย์, (CObject * แอมป์;) pa);
#ifdef _DEBUG
afxDump << คีย์ << ": " << pa << "\n"
#endif
}
ผลลัพธ์ได้จากโปรแกรมนี้มีดังนี้:
ลิซ่า: ในกรงที่ $ 4724 11
Marge: ในกรงที่ $ 47A8 35
โฮเมอร์: ในกรงที่ $ 4766 36
เลิศ: ในกรงที่ $ 45D 4 13
ภาพรวม CMapStringToOb |nbsp สมาชิกของคลาส| แผนภูมิของลำดับชั้น(&N)
ดูเพิ่มเติมnbspCMapStringToOb::GetStartPosition(&N)