CStringไม่มีคลาสพื้นฐาน?
วัตถุCStringประกอบด้วยลำดับความยาวของอักขระ CStringมีฟังก์ชันและตัวดำเนินการโดยใช้ไวยากรณ์คล้ายคลึงกับของ Basic การเรียงต่อกันและตัวดำเนินการเปรียบเทียบ ร่วมกับการจัดการหน่วยความจำง่ายCStringวัตถุการใช้ง่ายมากกว่าค่าอาร์เรย์ของอักขระธรรมดา?
CStringจะขึ้นอยู่กับชนิดข้อมูลTCHAR ถ้ามีกำหนดสัญลักษณ์_UNICODEสำหรับโปรแกรมของคุณTCHARได้มีกำหนดเป็นชนิดwchar_tชนิดอักขระ 16 บิต มิฉะนั้น จะมีกำหนดเป็นอักขระไม่ชนิดอักขระ 8 บิตปกติ ภายใต้การสนับสนุน Unicode แล้วCStringวัตถุจะประกอบด้วยตัวอักษร 16 บิต โดยที่ไม่สนับสนุน Unicode จะประกอบด้วยชนิด 8 บิตchar?
เมื่อไม่ได้ใช้_UNICODE, CStringถูกเปิดใช้งานสำหรับชุดของอักขระที่ตี (MBCS ชุดอักขระหรือที่เรียกว่าไบต์คู่ DBCS) หมายเหตุว่า สำหรับสตริ MBCS, CStringยังคงนับ ส่งกลับ มากยิ่งสายอักขระที่ใช้อักขระ 8 บิต และโปรแกรมประยุกต์ของคุณต้องตี MBCS รอคอย และพ่วงท้ายไบต์ตัวเอง?
CStringวัตถุมีลักษณะดังต่อไปนี้:
เคล็ดลับnbsp ถ้าเป็นไปได้ จัดสรรCStringวัตถุ บนเฟรมไม่ใช่ บนกอง นี้บันทึกหน่วยความจำ และช่วยให้ง่ายขึ้นผ่านพารามิเตอร์(&N)?
CStringช่วยคุณในการสงวนพื้นที่หน่วยความจำจัดโดยการอนุญาตให้สองสตริแชร์ค่าเดียวกันนอกจากนี้การใช้ร่วมกันเดียวกับบัฟเฟอร์ space.nbsp อย่างไรก็ตาม ถ้าคุณพยายามที่จะเปลี่ยนแปลงเนื้อหาของบัฟเฟอร์โดยตรง (ไม่ใช้ MFC), คุณสามารถเปลี่ยนแปลงสตริทั้งสองตั้งใจ CStringมีสองสมาชิกฟังก์ชันCString::LockBufferและCString::UnlockBufferเพื่อช่วยป้องกันข้อมูลของคุณ เมื่อคุณเรียกใช้LockBufferคุณสร้างสำเนาของสตริ แล้วจำนวนการอ้างอิงในการตั้งค่าเป็น -1 ซึ่ง "ล็อก" บัฟเฟอร์ ในขณะที่บัฟเฟอร์ที่ถูกล็อก สายอื่นไม่สามารถอ้างอิงข้อมูลในสายอักขระนั้น และสายอักขระถูกล็อกจะอ้างอิงอีกสาย โดยล็อกสายอักขระในบัฟเฟอร์ คุณแน่ใจว่า สายอักขระค้างแบบเอกสิทธิ์เฉพาะบุคคลกับข้อมูลจะยังคงไม่เปลี่ยน เมื่อคุณเสร็จสิ้นพร้อมข้อมูล โทรUnlockBufferการตั้งค่าจำนวนการอ้างอิงที่ 1(&N)?
ดูข้อมูลเพิ่มเติม การ สายอักขระใน MFCและ สาย: Unicode และเป็น Multibyte อักขระ Set (MBCS) สนับสนุนบทความในคำแนะนำของ Visual c ++ Programmer ของและ สายจัดการตามปกติในการอ้างอิงไลบรารีรันไทม์?
#รวม lt;afx.h>
สมาชิกของคลาส|nbsp แผนภูมิของลำดับชั้น(&N)
ตัวอย่างnbsp MFC อย่างสวัสดี(&N)
ดูเพิ่มเติมnbsp ในVisual c ++ Programmer ของคำแนะนำ: สตริงการ: พื้นฐาน CString ดำเนินการ, สตริงการ: สัมพันธภาพระหว่างคำ CString, สตริงการ: CString การดำเนินการที่เกี่ยวข้องกับสตริงการ C-ลักษณะ, สตริงการ: ล้างข้อมูลข้อยกเว้น CString, สตริงการ: อาร์กิวเมนต์ CString ผ่าน(&N)