> 백엔드 개발 > Golang > Go에서 일반 유형 구조를 사용하여 인터페이스 메소드 구현

Go에서 일반 유형 구조를 사용하여 인터페이스 메소드 구현

WBOY
풀어 주다: 2024-02-06 08:20:04
앞으로
500명이 탐색했습니다.

在 Go 中使用泛型类型结构实现接口方法

질문 내용

모든 유형의 매개변수를 단일 메서드에 전달할 수 있는 인터페이스를 원하고 제네릭이 포함된 단일 구현 구조를 원합니다.

이것은 내 문제를 매우 단순화한 버전입니다.

으아악

구조체를 직접 처리할 때 Set 메서드의 유형 정보를 잃지 않고 컴파일러의 요구 사항을 충족할 수 있는 방법이 있나요?


정답


Code

코드는 이렇게 수정해도 될 것 같아요

으아악

지침

매개변수화된 유형을 사용할 때마다 해당 정의의 유형 매개변수를 실제 유형으로 바꿔야 합니다. 이는 인터페이스의 일반 유형을 인스턴스화해야 함을 의미합니다. 이를 위해서는 인터페이스를 다음과 같이 선언해야 합니다.

으아악

그리고 사용할 때는 어떤 유형의 any을 사용하고 있는지 명확히 해야 합니다.

으아악

두 페이지를 인용했습니다

[1] Go 오류: 일반화되지 않은 유형을 사용할 수 없습니다

[2] 범용 인터페이스를 구현하는 방법은 무엇입니까?

위 내용은 Go에서 일반 유형 구조를 사용하여 인터페이스 메소드 구현의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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