LPTSTR GetBuffer ( int nMinBufLength );
´øÁ® ( CMemoryException );
¹Ýȯ °ª
°³Ã¼ÀÇ ¹®ÀÚ (null Á¾·á) ¹öÆÛ LPTSTR Æ÷ÀÎÅÍ¡£
¸Å°³ º¯¼ö
nMinBufLength
¹®ÀÚ¿¡ ¹®ÀÚ ¹öÆÛÀÇ ÃÖ¼Ò Å©±âÀÔ´Ï´Ù. ÀÌ °ª¿¡ null Á¾°áÀÚ¿¡ ´ë ÇÑ °ø°£ÀÌ Æ÷ÇÔ µÇÁö ¾Ê½À´Ï´Ù.
ÁÖÀÇ
CString °³Ã¼¿¡ ´ë ÇÑ ³»ºÎ ¹®ÀÚ ¹öÆÛ¿¡ ´ë ÇÑ Æ÷ÀÎÅ͸¦ ¹ÝȯÇÕ´Ï´Ù. ¹Ýȯ µÈ LPTSTR const ¿Í µû¶ó¼ CString ³»¿ëÀ» Á÷Á¢ ¼öÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
´Ù¸¥ CString ¸â¹ö ÇÔ¼ö¸¦ »ç¿ë Çϱâ Àü¿¡ ReleaseBuffer ¸¦ È£Ãâ ÇØ¾ß ÇÕ´Ï´Ù GetBuffer ¹ÝȯÇÑ Æ÷ÀÎÅ͸¦ »ç¿ë ÇÏ ¿© ¹®ÀÚ¿ÀÇ ³»¿ëÀ» º¯°æ ÇÏ´Â °æ¿ì¡£
GetBuffer ¹ÝȯÇÑ ÁÖ¼Ò À¯È¿ ÇÏÁö ¾ÊÀ» ¼ö ReleaseBuffer È£Ãâ ÈÄ ÀÌÈÄ Ãß°¡ CString ÀÛ¾÷ ÀçÇÒ´ç µÉ CString ¹öÆÛ¸¦ ¹ß»ýÇÒ ¼ö ÀÖ½À´Ï´Ù. CString ÀÇ ±æÀÌ º¯°æ ÇÏÁö ¾Ê´Â °æ¿ì ¹öÆÛ¸¦ ÀçÇÒ´ç µÇÁö °ÍÀÔ´Ï´Ù.
CString °³Ã¼°¡ ¼Ò¸ê µÇ ¸é ¹öÆÛ ¸Þ¸ð¸®¸¦ ÀÚµ¿À¸·Î ÇØÁ¦ µË´Ï´Ù.
Âü°í °è¼Ó ÃßÀû °æ¿ì ¹®ÀÚ¿ ±æÀÌ ÀÚ½ÅÀ» Á¾·á null ¹®ÀÚ Ãß°¡ ÇÏÁö ÇØ¾ß ÇÕ´Ï´Ù. ±×·¯³ª ReleaseBuffer¿Í ¹öÆÛ¸¦ ³õÀ» ¶§ ÃÖÁ¾ ¹®ÀÚ¿ ±æÀÌ ÁöÁ¤ ÇØ¾ß ÇÕ´Ï´Ù. Á¾·á null ¹®ÀÚ¸¦ Ãß°¡ÇÑ °æ¿ì ReleaseBuffer ¿¡ ±æÀÌ ¾øÀ¸¸é-1À» Àü´Þ ÇØ¾ß ÇÏ °í ReleaseBuffer ¹öÆÛÀÇ ±æÀÌ °áÁ¤¿¡ strlen ¼öÇà¡£
¿¹Á¦
´ÙÀ½ ¿¹Á¦¿¡¼´Â CString::GetBuffer ¸¦ »ç¿ë ÇÏ ¿©¡£
/ / Cstring::getbuffer¿¡ ´ë ÇÑ ¿¹Á¦
CString s ("abcd");
# ifdef _DEBUG
afxDump lt; < "CString s" << s << "\n";
# endif
LPTSTR p = s.GetBuffer (10);
strcpy (p, "Hello"); / / CString ¹öÆÛ¿¡ Á÷Á¢ ¾×¼¼½º
s.ReleaseBuffer ();
# ifdef _DEBUG
afxDump << "CString s" << s << "\n";
# endif
CString °³¿ä |nbsp; Ŭ·¡½º ¸â¹ö (ko) | °èÃþ ±¸Á¶ Â÷Æ®(&N)
Âü°í Ç׸ñnbsp;CString::GetBufferSetLength, CString::ReleaseBuffer(&N)