KoreanFoodie's Study
언리얼 문자열 (FName, FString, FText) 클래스 본문
언리얼 문자열 클래스
언리얼 문자열 클래스는 3 가지가 있다. (FName, FString, FText) 이 중, 조작이 가능한 클래스는 FString 이다.
참고 - 문자열의 변환 : 출처
FName 은 FName(*FString) 꼴을, FString 은 .ToString( ) 꼴을, FText 는 FText::FromName( ) 꼴을 활용하는 것을 알 수 있다.
기타 세부 구현은 소제목 링크의 문서를 참고하자.
FName
FName 은 콘텐츠 브라우저에서 애셋 이름을 지을 때, 스켈레탈 메시에서 본에 접근할 때 등등에 사용된다. FName 은 문자열을 하나하나 비교하지 않고, 주어진 문자열을 해싱한 테이블에 저장한 후, index 로 값을 비교한다. 이 때문에 키로 FName 에 접근하는 속도가 빠르며, 스트링에서 FName 으로의 변환도 해시 테이블을 사용하므로 상대적으로 빠르다. FName 은 대소문자를 구분하지 않고, 변경도 불가능하다.
// FName 생성
FName TestFName = FName(TEXT("Test FName"));
FString
FString 은 조작이 가능한 유일한 스트링 클래스이다.
// FString 생성
FString TestFString = FString(TEXT("TestFString"));
// 뷰포트에 출력
GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Blue, TestFString);
// 출력 로그에 출력
UE_LOG(MyClass, Log, TEXT("This is %s"), *TestFString);
FText
FText 는 언리얼 엔진에서 text localization 기능을 제공하는 주 컴포넌트이다. FText 는 현지와, 포맷팅 등을 제공하므로, 문자열을 생성할 때 사용한다.
모든 플랫폼에서 2바이트 문자열로 사용할 수 있다.
'Game Dev > Unreal C++ : Study' 카테고리의 다른 글
언리얼 비동기 애셋 로딩 (Asynchronous Loading) (0) | 2022.04.04 |
---|---|
언리얼 어설트 정리 (assert, verify, ensure) (0) | 2022.04.04 |
언리얼 문자열 (FName, FString, FText) 클래스 (0) | 2022.04.01 |
언리얼 가비지 컬렉션 (Unreal Garbage Collection) (0) | 2022.04.01 |
언리얼 스마트 포인터 (Unreal Smart Pointer) (0) | 2022.04.01 |
언리얼 시리얼라이제이션 (Unreal Serialization) (0) | 2022.04.01 |
0 Comments