Go에서 iota는 여러 상수를 순차적으로 정의할 수 있는 상수 생성기입니다. 하지만 이 프로세스 중에 많은 수의 값을 건너뛰어야 한다면 어떻게 해야 할까요?
가장 간단한 접근 방식은 iota를 상수로 이동하고 후속 초기화 표현식을 남겨 두는 것입니다. 비어 있는. 예를 들면 다음과 같습니다.
const ( APPLE = iota ORANGE PEAR BANANA = iota + 96 // 96 is manually calculated to get 99 GRAPE )
BANANA에 99를 할당하기 전에 96개의 값을 건너뜁니다. 그러나 BANANA 앞에 요소를 추가하면 BANANA 및 후속 상수 값에 영향을 미칩니다.
이 종속성을 피해야 하는 경우 상수 그룹을 해제하고 시작할 수 있습니다. 새로운 것. Iota의 값은 예약어 const를 만나면 0으로 재설정됩니다. 예:
const ( APPLE = iota ORANGE PEAR ) const ( BANANA = iota + 99 // iota is reset to 0 GRAPE )
이 방법을 사용하면 BANANA 앞에 요소를 삽입해도 BANANA 및 후속 상수의 값이 변경되지 않습니다.
유지하려면 값을 건너뛰는 동안 단일 상수 그룹을 사용하는 경우 번호 매기기를 중단하려는 곳에 상수를 도입하세요. 다음 줄의 iota에서 해당 값을 뺍니다.
const ( APPLE = iota ORANGE PEAR _BREAK BANANA = iota - _BREAK + 98 // Continues from 98 + 1 = 99 GRAPE )
또는 _break를 iota 1로 초기화하여 적용할 오프셋을 _break 자체의 값으로 만들 수 있습니다.
const ( APPLE = iota ORANGE PEAR _BREAK = iota + 1 BANANA = iota - _BREAK + 99 // Continues from 99 GRAPE )
Go에서 iota를 사용하여 상수를 정의할 때 값을 효율적으로 건너뛰려면 코드 구조와 기본 설정에 가장 적합한 접근 방식을 선택하세요.
위 내용은 Go 상수에서 Iota를 사용하여 값을 효율적으로 건너뛰는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!