Programming/C++/CLI

CLI - 초무식, 초단순 암기용 저장글

blueasa 2010. 5. 26. 17:30

※ C++/CLI 작업을 하면서, 단순 암기로 끝내버려야 할 내용들을 기록해둔다.

    나중에, 혹 다시 보기도 편하고 찾기도 편하고 정리하면서 다시 한번 되새기고

    뭐... 이런저런 이유로 기록한다. (일정 부분까지는 수정/추가할 것이다.)

 

■ 선언부

 

   ㅇ 헤더파일

 

       #include "stdafx.h" // 와 같이 동일함

 

       // .........

       // 등등...

       // .........

 

   ㅇ C# 클래스 참조

 

       #using <mscorlib.dll>

       #using <system.dll>
       #using <system.drawing.dll>

 

       // .........

       // 등등...

       // .........

 

       using namespace System;
       using namespace System::ComponentModel; // 와 같이 C#처럼 .이 아니라 :: 임에 유의
       using namespace System::Collections;
       using namespace System::Windows::Forms;
       using namespace System::Data;
       using namespace System::Drawing;

 

       // .........

       // 등등...

       // .........

 

■ 개념 정리

 

    : 앞은 C++/CLI에서의 표현 뒤는 C++에서의 표현 - 걍 보고 외워버려도 된다. 이런건

 

   ㅇ ^ : Handle, Pointer 연산자 개념

 

   ㅇ gcnew : CLI Heap 할당 연산자

       - garbage collection new ( 동적 메모리를 관리(managed) 해줌 ), delete 처리가 필요없음.

 

... ING ...

 

■ CLI 함수 선언시 주의

 

   ㅇ return value

       - BOOL → bool

 

... ING ...

 

■ managed / unmanaged

 

... ING ...

 

#pragma unmanaged

// 여기는 C++ 코드 구현부

#pragma managed

// 여기는 CLI 코드 구현부

 

... ING ...

 

■ 데이터 타입, 형 변환

 

   ㅇ 문자열 : String ^strReturn;

 

   ㅇ CString 값 대입

 

       - String ^szCommand = gcnew String( (LPCTSTR)strTemp ); // CString strTemp;

 

... ING ...

 

 

■ CLI 형식 구문


* (MSDN 참조)

CLI 형식

C++/CLI

참조 클래스 ref class R
값 클래스 value class V
추상 클래스 ref class R abstract
봉인 클래스 ref class R sealed
인터페이스 클래스 interface class IBar
CLI 열거형 enum class E
대리자 형식 delegate void CallBack()

 

... ING ...

반응형