티스토리 뷰

4.6 에서 클래스가 변경이 되었는데.  4.5.1 까지 프로젝트에서 새 클래스를 만들 때 마다 실제로 사용하지


않더라도 생성자를 포함했어야 했다.


4.6에서 더이상 그렇지 않아도 되면서 생성자는 이제 선택사항이 되었다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// MyActor.h
 
UCLASS()
class TESTCONSTRUCTOR_API AMyActor : public AActor
{
    GENERATED_BODY()
    
    
};
 
/*********************************/
 
// MyActor.cpp
 
#include "MyActor.h"
cs



GENERATED_BODY 매크로 사용시에 생성자를 정의하지 않고도 빌드 할 수 있다.


생성자가 필요한 경우 해당 매크로를 GENERATED_UCLASS_BODY 로 변경 하면 된다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// MyActor.h
 
UCLASS()
class TESTCONSTRUCTOR_API AMyActor : public AActor
{
    GENERATED_UCLASS_BODY()
    
    
};
 
/*********************************/
 
// MyActor.cpp
 
#include "MyActor.h"
 
AMyActor::AMyActor(const FObjectInitializer& ObjectInitializer)
    : Super(ObjectInitializer)
{
    // Class constructor/initialization code
}
cs


GENERATED_BODY 매크로를 사용하여 생성자를 정의 하면 error2084(이미 정의된 함수가 있습니다) 발생한다.





공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함