수색…


자리 구분 기호

몇 자릿수 이상의 숫자 리터럴은 읽기가 어렵습니다.

  • 7237498123을 발음 해주십시오.
  • 237498123과 237499123을 비교해보십시오.
  • 237499123 또는 20249472가 더 큰지 여부를 결정하십시오.

C++14 에서는 숫자 및 사용자 정의 리터럴에서 숫자 구분 기호로 ' Simple Quotation Mark ' 를 정의합니다. 이렇게하면 사람이 많은 사람들이 더 쉽게 파싱 할 수 있습니다.

C ++ 14
long long decn = 1'000'000'000ll;
long long hexn = 0xFFFF'FFFFll; 
long long octn = 00'23'00ll;
long long binn = 0b1010'0011ll;

작은 따옴표는 값을 결정할 때 무시됩니다.

예:

  • 리터럴 1048576 , 1'048'576 , 0X100000 , 0x10'00000'004'000'000 모두 동일한 값 0'004'000'000 집니다.
  • 리터럴 1.602'176'565e-191.602176565e-19 는 동일한 값 1.602176565e-19 집니다.

작은 따옴표의 위치는 부적합합니다. 다음은 모두 동일합니다.

C ++ 14
long long a1 = 123456789ll;
long long a2 = 123'456'789ll; 
long long a3 = 12'34'56'78'9ll;
long long a4 = 12345'6789ll;

또한 user-defined 리터럴에서도 사용할 수 있습니다.

C ++ 14
std::chrono::seconds tiempo = 1'674'456s + 5'300h;


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow