>백엔드 개발 >Golang >Go: 유형 주장 - 사양에 버그가 있나요?

Go: 유형 주장 - 사양에 버그가 있나요?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB앞으로
2024-02-06 08:35:10953검색

Go:类型断言 - 规范中是否有错误?

질문 내용

go Canonical Type Assertion에 버그가 있나요?

으아아아

마지막 예는 무엇을 의미하나요? var v,好的接口{} = x.(t)?

go 1.19에서 오류가 발생했습니다. 구문 오류: 예상치 못한 인터페이스, := 또는 = 또는 쉼표가 필요함syntax 错误:意外的接口,期望 := 或 = 或逗号


正确答案


所有这些行都在尝试相同的操作:x 的类型断言以键入 T。值 ok 确定断言是否成功。在您提供的最后一个示例中,唯一的区别是,您没有为 vok 确定类型,而是为两者提供了 interface{} 的类型。将 vok 声明为 interface{} 不会更改它们包含的值。它允许您将它们发送到函数或将它们添加到需要 interface{}

정답

🎜🎜이 모든 줄은 동일한 작업을 시도하고 있습니다.x에 T를 입력하세요. ok 값은 어설션이 성공했는지 여부를 결정합니다. 제공하신 마지막 예에서 유일한 차이점은 vok에 대한 유형을 결정하는 대신 두 에 대해 interface{}를 제공했다는 것입니다. 유형. <code>vokinterface{}로 선언해도 여기에 포함된 값은 변경되지 않습니다. 이를 통해 함수에 보내거나 인터페이스{} 유형이 필요한 컬렉션에 추가할 수 있으며, 이때 다시 어설션해야 합니다. 🎜

위 내용은 Go: 유형 주장 - 사양에 버그가 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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