C++/CX
(C++ component extensions, 氏 플러스 플러스 컴포넌트 擴張)는
마이크로소프트
가
윈도 폰 8
과
윈도우 8
과 같은 새로운 윈도 런타임을 支援하기 위해 考案한, C++를 擴張한 言語 規格이다.
文法이
C++/CLI
와 類似하지만, 컴파일한 結果物은 C++/CLI의 Managed Code가 아닌
네이티브 코드
다. 現在
비주얼 C++ 2012
以上에서 使用할 수 있다.
口文 變化
[
編輯
]
윈도 런타임을 爲한 追加 構文을 除外하면, 基本的으로 C++11 標準과 互換되도록 設計되어 있다.
客體 生成
[
編輯
]
參照 포인터
^
는 CLI와 같으나
gcnew
를 使用하지 않고 新規 키워드
ref new
를 使用한다
C++/CLI
Obj
^
obj
=
gcnew
Obj
();
C++/CX
Obj
^
obj
=
ref
new
Obj
();
클래스 파일 分離
[
編輯
]
클래스를 定義하는 部分을 여러個로 나눌 수 있으며 키워드
partial
를 使用한다.
// test.internal.h
partial
ref
class
Test
{
private
:
int
_priv_num
;
};
// test.h
#include
"test.internal.h"
ref
class
Test
{
public
:
int
GetNumber
();
}
// test.cpp
#include
"pch.h"
#include
"test.h"
int
Test::GetNumber
()
{
return
_priv_num
;
}
런타임 제네릭
[
編輯
]
C++/CX는 윈도 런타임의 런타임 基盤 動的 제네릭을 支援한다.
generic
<
typename
T
>
public
ref
class
Test
{
private
:
property
T
Value
;
}
같이 보기
[
編輯
]
外部 링크
[
編輯
]