
MongoDBBSONInt64::unserialize 함수는 BSON에서 64비트 정수 값을 unserialize 할 때 사용됩니다. 이 함수는 BSON에서 64비트 정수 값을 저장하는 방식에 따라 unserialize 할 수 있습니다.
BSON에서 64비트 정수 값을 저장하는 방식은 다음과 같습니다.
- 64비트 정수 값이 0에서 2^53 - 1 사이인 경우, 정수 값 자체가 저장됩니다.
- 64비트 정수 값이 2^53 - 1보다 큰 경우, 정수 값이 2^53 - 1보다 큰지 여부를 나타내는 플래그와 정수 값의 절반을 저장합니다.
MongoDBBSONInt64::unserialize 함수는 이 방식을 사용하여 BSON에서 64비트 정수 값을 unserialize 합니다.
위의 코드를 사용하여 unserialize 한 값이 64비트 정수 값으로 unserialize 되는지 확인해 볼 수 있습니다.
#hostingforum.kr
cpp
int64_t value = MongoDBBSONInt64::unserialize("12345678901234567890");
if (value >= 0 && value <= (1LL << 53) - 1) {
// 정수 값이 0에서 2^53 - 1 사이인 경우
// unserialize 한 값이 64비트 정수 값으로 unserialize 된 것입니다.
} else {
// 정수 값이 2^53 - 1보다 큰 경우
// unserialize 한 값이 64비트 정수 값으로 unserialize 된 것입니다.
}
위의 코드를 사용하여 unserialize 한 값이 64비트 정수 값으로 unserialize 되는지 여쭤볼 수 있습니다.
2025-06-01 19:26