posted by WizardMania 2015. 3. 6. 10:10

기존 널포인터는 NULL을 사용했는데 일반적으로는 큰문제점이 없지만 실제적으로 #define NULL 0 으로 정의되어있었기 때문에 사실상 0이라는 정수형 이었다.


따라서 함수의 매겨변수로 NULL값자체를 넘긴다면 실제자료형은 int형으로 판단이 된다.

이런문제점들을 해결하기 위해 나온것이 nullptr 입니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void function(int a)
{
    printf("int \n");
}
 
void function(int* a)
{
    printf("int* \n");
}
 
int main()
{
    function(NULL);
    function(nullptr);
 
    return 0;
}
 
 
cs

결과값

int

int*


널포인터 형식을 좀더 명확하게 해주므로 NULL 대신에 nullptr 사용하는것이 좋을것 같음.


MSDN

https://msdn.microsoft.com/ko-kr/library/4ex65770.aspx




'프로그래밍 > C++11' 카테고리의 다른 글

auto  (0) 2015.03.06
posted by WizardMania 2015. 2. 26. 10:27

2014 대구게임아카데미 12기 프로젝트 CubeIsland
프로젝트 진행기간은 총 3개월 진행되었습니다.
게임룸에 최대4명 접속하여 개인전으로 진행됩니다.

맵은 파괴가능한 큐브로 이루어져 있으며 큐브를 파괴하여 각종 아이템및 열쇠를 얻어 포탈을 타고 다음스테이지로 진행 하게됩니다.
최종스테이지에있는 보물상자를 가장먼저획듣하는 플레이어가 승리 하게 됩니다. 
각캐릭터는 성우를 기용하여 완성도를 더욱 높였습니다.

별도의 엔진을 사용하지 않았으며 DirectX를 사용하여 툴및 게임을 자체 제작하였습니다.


posted by WizardMania 2015. 2. 26. 10:25

2014 대구게임아카데미 12기 프로젝트 LostSeason
프로젝트 진행기간은 총 3개월 진행되었습니다.
게임룸에 최대8명 접속하여 4:4 대전으로 진행되는 깃발 뺏기 대전게임입니다.
총5종류 캐릭터가 등장하며 캐릭터당 특징있는 2개의 스킬을 가지고 있습니다.
상대편 본진의 성물을 아군본진으로 옮기면 점수를 획득하게 됩니다.
별도의 엔진을 사용하지 않았으며 DirectX를 사용하여 툴및 게임을 자체 제작하였습니다.