CString 인수전달
참조 : http://msdn.microsoft.com/ko-kr/library/cc468200(v=vs.71).aspx
아는사람은 아는내용이지만 모른분을 위해서^^
isual Studio .NET 2003
이 문서에서는 CString 개체를 함수에 전달하고 함수에서 CString 개체를 반환하는 방법에 대해 설명합니다.
CString 인수 전달 규칙
클래스 인터페이스를 정의할 때는 멤버 함수에 대한 인수 전달 규칙을 결정해야 합니다. CString 개체를 전달하고 반환하는 데는 몇 가지 표준 규칙이 있습니다. 함수 입력에 사용하는 문자열 및 함수 출력에 사용하는 문자열에 설명된 규칙을 따르면 효율적이고 올바른 코드를 만들 수 있습니다.
함수 입력에 사용하는 문자열
문자열을 함수에 입력하려면 대부분의 경우에는 문자열 함수 매개 변수를 LPCTSTR로 선언하는 것이 가장 좋습니다. 필요하면 생성자와 할당 연산자를 사용하여 함수 내에서 CString 개체로 변환합니다. 함수로 문자열 내용을 변경할 수 있도록 하려면 매개 변수를 상수가 아닌 CString 참조(CString&)로 선언합니다.
함수 출력에 사용하는 문자열
CString 개체는 기본 형식처럼 값 의미론 다음에 오므로 일반적으로 함수에서 CString 개체를 반환할 수 있습니다. 읽기 전용 문자열을 반환하려면 상수 CString 참조(const CString&)를 사용합니다. 다음 예제에서는 CString 매개 변수와 반환 형식의 사용 방법을 보여 줍니다.
예제코드)
아는사람은 아는내용이지만 모른분을 위해서^^
isual Studio .NET 2003
이 문서에서는 CString 개체를 함수에 전달하고 함수에서 CString 개체를 반환하는 방법에 대해 설명합니다.
CString 인수 전달 규칙
클래스 인터페이스를 정의할 때는 멤버 함수에 대한 인수 전달 규칙을 결정해야 합니다. CString 개체를 전달하고 반환하는 데는 몇 가지 표준 규칙이 있습니다. 함수 입력에 사용하는 문자열 및 함수 출력에 사용하는 문자열에 설명된 규칙을 따르면 효율적이고 올바른 코드를 만들 수 있습니다.
함수 입력에 사용하는 문자열
문자열을 함수에 입력하려면 대부분의 경우에는 문자열 함수 매개 변수를 LPCTSTR로 선언하는 것이 가장 좋습니다. 필요하면 생성자와 할당 연산자를 사용하여 함수 내에서 CString 개체로 변환합니다. 함수로 문자열 내용을 변경할 수 있도록 하려면 매개 변수를 상수가 아닌 CString 참조(CString&)로 선언합니다.
함수 출력에 사용하는 문자열
CString 개체는 기본 형식처럼 값 의미론 다음에 오므로 일반적으로 함수에서 CString 개체를 반환할 수 있습니다. 읽기 전용 문자열을 반환하려면 상수 CString 참조(const CString&)를 사용합니다. 다음 예제에서는 CString 매개 변수와 반환 형식의 사용 방법을 보여 줍니다.
예제코드)
................................................................
class CName : public CObject
{
private:
CString m_firstName;
char m_middleInit;
CString m_lastName;
public:
CName() {}
void SetData( LPCTSTR fn, const char mi, LPCTSTR ln )
{
m_firstName = fn;
m_middleInit = mi;
m_lastName = ln;
}
void GetData( CString& cfn, char mi, CString& cln )
{
cfn = m_firstName;
mi = m_middleInit;
cln = m_lastName;
}
CString GetLastName()
{
return m_lastName;
}
};
CName name;
CString last, first;
TCHAR middle;
name.SetData( "John", 'Q', "Public" );
ASSERT( name.GetLastName() == "Public" );
name.GetData( first, middle, last );
ASSERT( ( first == "John" ) && ( last == "Public" ) );
..............................................................
댓글
댓글 쓰기