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

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

WBOY
WBOY앞으로
2024-02-06 08:20:04501검색

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

질문 내용

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

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

으아악

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


정답


Code

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

으아악

지침

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

으아악

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

으아악

두 페이지를 인용했습니다

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

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

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

성명:
이 기사는 stackoverflow.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제