> 백엔드 개발 > Golang > Golang의 함수가 반환한 인터페이스 {} 값의 유형을 확인합니다.

Golang의 함수가 반환한 인터페이스 {} 값의 유형을 확인합니다.

王林
풀어 주다: 2024-02-05 11:49:27
앞으로
1153명이 탐색했습니다.

确定 Golang 中函数返回的接口 {} 值的类型

질문 내용

열거형에서 값을 반환하는 함수가 있습니다. 열거형은 다음과 같이 정의됩니다:

으아아아

방문방법의 시그니처는 다음과 같습니다

으아아아

메서드를 호출한 후 DataType 유형의 값을 받고 다음 줄에 유형과 반환 값을 인쇄합니다.

으아아아

출력은 다음과 같습니다:

으아아아

지금까지는 괜찮았지만 비교가 필요하고 그게 제가 가진 문제입니다. 제가 Golang에 대해 잘 모른다는 것입니다. 나는 다음을 가지고 있습니다:

으아아아

여기서 반환 유형 확인을 진행하는 방법을 모르겠습니다. 다음 줄을 시도하면 원하는 코드가 실행되지 않습니다. 이 경우 VOID를 반환합니다. 내 질문은 결과에 따라 특정 작업을 수행하기 위해 반환 유형을 비교하는 방법입니다. 나는 또한 다음을 시도했습니다:

으아아아

이 경우에도 스위치 내부 상황은 만족스럽지 않습니다. 내 질문은 기본적으로 함수 호출에서 반환된 인터페이스{} 값의 유형을 결정하는 방법입니다.


정답


@Charlie Tumahai가 옳다고 생각합니다. 문제는 가치관의 불일치입니다. Go Playground에서 작은 예제 를 시도했는데 예상대로 작동합니다. if DataType 是从 Visit 返回,然后与 DataType 비교가 참일 수 있습니다.

반환된 유형 DataType 类型。 Visit2 方法演示了这一点:它返回一个 int64,它永远不会等于 BREAK이어야 합니다.

이에 대한 설명은

Go 프로그래밍 언어 사양의 비교 연산자:

으아아아

위 내용은 Golang의 함수가 반환한 인터페이스 {} 값의 유형을 확인합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:stackoverflow.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿