티스토리 뷰
저번 포스팅에서는 파일입출력을 도와주는 FileUtils라는 클래스에 대해서 알아 보았다.
이번 포스팅에서도 파일입출력은 아니지만 데이터를 저장,불러오기를 편하게(결국 파일 입출력이다)해주는 클래스를 알아 보겠다.
이 클래스의 이름은 UserDefault 이다. 왜 이름이 이따구 인지는 모르겟지만..
코코스 Api Document 페이지에서는(http://cocos2d-x.org/docs/api-ref/cplusplus/v3x/db/d94/classcocos2d_1_1_user_default.html#details)
값들을 저장하고 불러올 수 있는 작은 데이터베이스 역할을 한다고 한다.
작은 데이터 베이스 역할을 한다 하니 실제로 사용방법도 간단하다.
UserDefault클래스 또한 싱글톤 클래스 이기에 멤버 함수를 사용 하려면 UserDefault::getInstance()->[함수명] 형식으로 사용해야 한다.
Public 멤버 함수
bool getBoolForKey(const char* key)
인자로 받은 key값으로 저장한 bool형의 값을 가져 옵니다. 만약 키가 없다면 false를 반환 합니다.
int getIntegerForKey(const char* key)
인자로 받은 key값으로 저장한 int형의 값을 가져 옵니다. 만약 키가 없다면 0을 반환 합니다.
float getFloatForKey(const char* key)
인자로 받은 key값으로 저장한 float형의 값을 가져 옵니다. 만약 키가 없다면 0.0을 반환 합니다.
double getDoubleForKey(const char* key)
인자로 받은 key값으로 저장한 double형의 값을 가져 옵니다. 만약 키가 없다면 0.0을 반환 합니다.
std::string getStringForKey(const char* key)
인자로 받은 key값으로 저장한 std::string형의 값을 가져 옵니다. 만약 키가 없다면 비어있는 문자열을 반환 합니다.
Data getDataForKey(const char* key)
인자로 받은 key값으로 저장한 Data형의 값을 가져 옵니다. 만약 키가 없다면 비어있는 Data를 반환 합니다.
virtual void setBoolForKey(const char* key, bool value)
인자로 받은 key값으로 bool형의 데이터를 저장합니다.
virtual void setIntegerForKey(const char* key, int value)
인자로 받은 key값으로 int형의 데이터를 저장합니다.
virtual void setFloatForKey(const char* key, float value)
인자로 받은 key값으로 float형의 데이터를 저장합니다.
virtual void setDoubleForKey(const char* key, double value)
인자로 받은 key값으로 double형의 데이터를 저장합니다.
virtual void setStringForKey(const char* key, const std::string& value)
인자로 받은 key값으로 std::string형의 데이터를 저장합니다.
virtual void setDataForKey(const char* key, const Data& value)
인자로 받은 key값으로 Data형의 데이터를 저장합니다.
virtual void flush()
setXXXForKey() 함수들을 실행하고 나선 반드시 실행 호출해주셔야 게임을 종료하셨을떄도 저장이 됩니다.
만약 호출 하지 않으신다면 게임이 꺼지고 나선 저장한 데이터가 다 날라갑니다.
virtual void deleteValueForKey(const char* key)
인자로 받은 키값의 데이터를 삭제합니다.
이 외에도 코코스 페이지로 가서 보면 getXXXForKey(const char* key,<Type> defaultvalue) 라는 함수가 있는데 역할은 일반적인 getXXXForKey함수랑 동일하지만 키가 없을경우 기본값을 반환하는게 아닌 두 번째 인자로 전달된 defaultvalue가 전달 된다고 한다.
'잡담 > 과거' 카테고리의 다른 글
Qt Creator 설치 (0) | 2017.04.28 |
---|---|
팀프로젝트 - 2 (0) | 2016.12.16 |
cocos2d-x 에서의 파일입출력 (FileUtils 클래스) (0) | 2016.11.26 |
MinGW로 컴파일 해보기 (0) | 2016.11.24 |
MingGW설치 하기 (0) | 2016.11.24 |