댓글 쓰기 권한이 없습니다. 로그인 하시겠습니까?
MFC
2009.04.21 17:55
Cstring methods
조회 수 57278 댓글 0
CString::GetLength 이 메소드는 CString 객체 안에 있는 캐릭터의 count를 반환한다. 이 count는 종료null문자를 포함하지 않는다. // example for CString::GetLength
CString::IsEmpty 이 메소드는 CString 객체가 비어있는지를 결정한다. // example for CString::IsEmpty
CString::Empty 이 메소드는 CString객체를 비어있고 free memory로 만든다. // example for CString::Empty
CString::GetAt 이 메소드는 인덱스넘버에의해 하나의문자를 반환한다. // example for CString::GetAt
CString::SetAt 이 메소드는 인덱스넘버에 의해 지정받는 한문자를 덮어쓴다.
CString::Compare 이 메소드는 CString 객체와 다른 문자열을 Windows CE lstrcmp함수를 사용해서 비교한다. // example for CString::Compare
CString::CompareNoCase 이 메소드는 CStiring객체와 다른 문자열을 lstrcmpi 함수를 사용해서 비교한다. (대문자가 상관없이 비교하는듯?...) // example for CString::CompareNoCase
CString::Mid 이 메소드는 CString 객체의 0위치부터 nCount의 부분문자열을 추출한다. 추출된 부분문자열을 복사해서 리턴한다. 인덱스가 zero base인것을 제외하고는 Basic MID함수와 비슷하다. // example for CString::Mid
CString::Left 왼쪽부터 nCount의 문자열을 추출~ // example for CString::Left
CString::Right 오른쪽부터 nCount의 문자열을 추출~ // example for CString::Right
CString::SpanIncluding 이 메소드는 문자열로부터 문자를 추출하고, lpszCharSet에의해 확인된 문자열의 첫번째 문자부터 시작한다. 만약 string의 첫번째 문자가 문자셋에 없으면 SpanIncluding은 empty string을 리턴한다. 그렇지 않다면 set안에 있는 연속적인 문자열을 연속으로 리턴한다. // example for CString::SpanIncluding
CString::SpanExcluding This method searches the string for the first occurrence of any character in the specified set lpszCharSet. SpanExcluding extracts and returns all characters preceding the specified character set. In other words, the specified character set, and all characters following it in the string, are not returned. If the specified character set is not found in the string, then SpanExcluding returns an empty string.(이해못함) // Portions are delimited by a semicolon( ; ),
CString::MakeUpper 이 메소드는 CString 객체를 대문자로 바꾼다. // example for CString::MakeUpper
CString::MakeLower 소문자를 대문자로~ // example for CString::MakeLower
CString::MakeReverse 앞뒤를 바꺼바꺼~ // example for CString::MakeReverse
CString::Format 이 메소드는 sprintf 포맷이 데이타를 C-style 캐릭터배열로 포맷하는것과 같은 방법으로 데이타를 쓴다. 일련의 문자열과 CString안의 값을 포맷하고 저장한다?... 잘모르겠음~ CString str;
CString::TrimLeft 이 메소드는 줄이나,빈칸,탭을 삭제한다.
CString strBefore; _tprintf(_T("After : \"%s\"\n"), (LPCTSTR) strAfter); //"Hockey is best!"
CString::TrimRight 역시 오른쪽의 선언한것들을 삭제하는듯 CString strBefore; CString::Find 이 메소드는 부분문자열의 첫번째 매치되는 문자를 조사한다. // First example demonstrating
CString::ReverseFind 뒤에서 부터 찾는듯~ // Example for CString::ReverseFind
CString::FindOneOf 이 메소드는 lpszCharSet안에 포함된 어떤문자라도 매치되는 첫번째 문자를 찾기위해 조사한다. // example for CString::FindOneOf
CString::GetBuffer 이 메소드는 CStirng 객에의 내부의 캐릭터버퍼의 포인터를 되찾는다. LPTSTR은 const로 리턴되지않고 CStirng 목차안의 직접수정을 허락한다. 만약 nMinBufLength가 현재 버터의 길이보다 크면 GetBuffer가콜되어 현재의 버퍼를파괴할것이다 그것을 요청된 사이즈의 버퍼로 바꾸고, 카운트를 zero로 고쳐라?.. 만약 당신이 이버퍼위에 LockBuffer를 콜했다면 당신은 버퍼의 lock을 잃어버릴것이다. // example for CString::GetBuffer 이 방법은 CStirng 객체의 내부의 캐릭터 버터의 포인터를 반환하고 필요하다면 nNewLength에서 지정받는 길이와 정확히 맞추기위해 , 그것의 길이를 끊거나 증가한다. CString str;
CString::ReleaseBuffer 이 메소드는 GetBuffer에 의해 할당된 버퍼를 해체한다. 만약 당신이 버퍼스트링이 널로 끝난다는 것을 알면 당신은 nNewLength 파라미터를 생략할수있다 만일 당신의 스트링이 널로 안끝나면 그 길이를 지정하기위해 nNewLength를 사용해라. GetBuffer에 의해 리턴된 주소는 ReleaseBuffer나 다른 어떤 CString operation이 콜되도 무효하다 // example for CString::ReleaseBuffer
CString::FreeExtra This method frees any extra memory previously allocated by the string but no longer needed. This should reduce the memory overhead consumed by the string object. The method reallocates the buffer to the exact length returned by GetLength. #include <afx.h>
output
CString::LockBuffer 버터의 string을 락시킴;
CString::UnlockBuffer 락된 버터를 언락시킴- _-;
CString::AllocSysString 이 방법은 새로운 BSTR 타입의 새로운 Automation 을 할당하고 CString 객체의 목차를 복사하고 종료의 널문자를 포함한다. CMemoryException는 만약 불충분한 메모리가 존재하면 던져진다?;; 이 메소드는 Automation한 스트링을 반환하기 위해 일반적으로 사용된다. CString::AllocSysString CString str("Hockey is Best!");
CString::SetSysString 이 메소드는 pbstr에의해 참조되는 BSTR을 재할당하고 널 문자를 포함하는 CString 객체의 목차를 카피한다. pbstr에 의해 참조되는 BSTR의 값은 바뀔수도 있다.이 메소드는 만약 불충분한 메모리가 존재하면 CMemoryException을 던진다?; 이 메소드는 통상 OLE Automation의 참조에 의해 통과되는 문자열의 값을 바꾸기위해 사용된다. // create an OLE string
CString::LoadString 이 메소드는 Windows CE 스트링 리소스를 읽고 기존의 CString 객체에 nID로 확인된다. // example for CString::LoadString
수업시간에 과제로 나온 MSDN 번역... 고생했던 기억이 납니다 ㅋ [출처] Cstring methods|작성자 바이브
CString 은 CObject에서 상속을 받지않고 Simple Value Types의 하나이다. CString object 는 문자들의 가변적인 길이의 연속으로 구성되고, 문자 배열보다 사용하기가 쉽다. CString은 TCHAR 데이터 타입을 기초로 하고 있다. n CString Class Members Ø Construction CString - CString의 생성자 ( CString :: CString ) CString( ); CString( const CString& stringSrc ); throw( CMemoryException ); CString( TCHAR ch, int nRepeat = 1 ); throw( CMemoryException ); CString( LPCTSTR lpch, int nLength ); throw( CMemoryException ); CString( const unsigned char* psz ); throw( CMemoryException ); CString( LPCWSTR lpsz ); throw( CMemoryException ); CString( LPCSTR lpsz ); throw( CMemoryException ); Example
// example for CString::CString CString s1; // Empty string CString s2( "cat" ); // From a C string literal CString s3 = s2; // Copy constructor CString s4( s2 + " " + s3 ); // From a string expression CString s5( 'x' ); // s5 = "x" CString s6( 'x', 6 ); // s6 = "xxxxxx" CString s7((LPCSTR)ID_FILE_NEW); // s7 = "Create a new document" CString city = "Philadelphia"; // NOT the assignment operator Ø The String as an Array GetLength : 설정된 문자열의 길이를 리턴 int GetLength( ) const; IsEmpty : 문자열의 버퍼가 비워져 있는지를 검사 BOOL IsEmpty( ) const; Empty : 문자열을 삭제하여 버퍼를 비운다. void Empty( ); GetAt : 특정위치의 문자값을 얻는다. TCHAR GetAt( int nIndex ) const; operator [] TCHAR operator []( int nIndex ) const SetAt void SetAt( int nIndex, TCHAR ch ); operator LPCTSTR operator LPCTSTR ( ) const; Ø Assignment / Concatenation Operator = const CString& operator =( const CString& stringSrc ); throw( CMemoryException ); const CString& operator =( TCHAR ch ); throw( CMemoryException ); const CString& operator =( const unsigned char* psz ); throw( CMemoryException ); const CString& operator =( LPCWSTR lpsz ); throw( CMemoryException ); const CString& operator =( LPCSTR lpsz ); throw( CMemoryException ); Operator + friend CString operator +( const CString& string1, const CString& string2 ); throw( CMemoryException ); friend CString operator +( const CString& string, TCHAR ch ); throw( CMemoryException ); friend CString operator +( TCHAR ch, const CString& string ); throw( CMemoryException ); friend CString operator +( const CString& string, LPCTSTR lpsz ); throw( CMemoryException ); friend CString operator +( LPCTSTR lpsz, const CString& string ); throw( CMemoryException ); Operator += const CString& operator +=( const CString& string ); throw( CMemoryException ); const CString& operator +=( TCHAR ch ); throw( CMemoryException ); const CString& operator +=( LPCTSTR lpsz ); throw( CMemoryException ); Ø Comparison Operator == <, etc Compare : 대소문자 구분 int Compare( LPCTSTR lpsz ) const; CompareNoCase : 대소문자 구분 안함 int CompareNoCase( LPCTSTR lpsz ) const; Collate int Collate( LPCTSTR lpsz ) const CollateNoCase int CollateNoCase( LPCTSTR lpsz ) const; Ø Extraction Mid : 문자열의 중간부분을 추출한다. CString Mid( int nFirst ) const; throw( CMemoryException ); CString Mid( int nFirst, int nCount ) const; throw( CMemoryException ); Left : 문자열의 왼쪽부분은 추출한다. CString Left( int nCount ) const; throw( CMemoryException ); Right : 문자열의 오른쪽부분을 추출한다. CString Right( int nCount ) const; throw( CMemoryException ); SpanIncluding : 포함된 문자를 추출 CString SpanIncluding( LPCTSTR lpszCharSet ) const throw( CMemoryException ); SpanExcluding CString SpanExcluding( LPCTSTR lpszCharSet ) const; throw( CMemoryException ); Ø Other Conversions MakeUpper : 소문자를 대문자로 바꾼다. void MakeUpper( ); MakeLower : 대문자를 소문자로 바꾼다. void MakeLower( ); MakeReverse : 문자를 reverse 시킨다. void MakeReverse( ); Replace int Replace( TCHAR chOld, TCHAR chNew ); int Replace( LPCTSTR lpszOld, LPCTSTR lpszNew ); Remove : 문자를 제거한다. int CString::Remove( TCHAR ch ); Insert int Insert( int nIndex, TCHAR ch ) throw( CMemoryException ); int Insert( int nIndex, LPCTSTR pstr ) throw( CMemoryException ); Delete int Delete( int nIndex, int nCount = 1 ) throw( CMemoryException ); Format : sprintf와 비슷하다. void Format( LPCTSTR lpszFormat, ... ); void Format( UINT nFormatID, ... ); FormatV void FormatV( LPCTSTR lpszFormat, va_list argList ); TrimLeft void TrimLeft( ); void CString::TrimLeft( TCHAR chTarget ); void CString::TrimLeft( LPCTSTR lpszTargets ); TrimRight void TrimRight( ); void CString::TrimRight( TCHAR chTarget ); void CString::TrimRight( LPCTSTR lpszTargets ); FormatMessage void FormatMessage( LPCTSTR lpszFormat, ... ); void FormatMessage( UINT nFormatID, ... ); Ø Serching Find : 문자의 인덱스를 찾아 반환한다. int Find( TCHAR ch ) const; int Find( LPCTSTR lpszSub ) const; int Find( TCHAR ch, int nStart ) const; int Find( LPCTSTR pstr, int nStart ) const; ReverseFind : 뒤에서부터 찾는다. int ReverseFind( TCHAR ch ) const; FindOneOf int FindOneOf( LPCTSTR lpszCharSet ) const; Ø Archive / Dump Operator <<, Operator >> friend CArchive& operator <<( CArchive& ar, const CString& string ); throw( CArchiveException ); friend CArchive& operator >>( CArchive& ar, CString& string ); throw( CArchiveException ); friend CDumpContext& operator <<( CDumpContext& dc, const CString& string ); Ø Buffer Access GetBuffer LPTSTR GetBuffer( int nMinBufLength ); throw( CMemoryException ); GetBufferSetLength LPTSTR GetBufferSetLength( int nNewLength ); throw( CMemoryException ); ReleaseBuffer void ReleaseBuffer( int nNewLength = -1 ); FreeExtra void FreeExtra( ); LockBuffer LPTSTR LockBuffer( ); UnlockBuffer void UnlockBuffer( )
[출처] CString|작성자 하얀악마 Constructors/Destructors Methods Operators Dreamy의 코드 스크랩내가 모으고 내가 보는
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Designed by sketchbooks.co.kr / sketchbook5 board skin
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5