"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > GO가 "인수 유형으로 기능을 사용 할 수 없음"오류를 던지는 이유는 무엇입니까?

GO가 "인수 유형으로 기능을 사용 할 수 없음"오류를 던지는 이유는 무엇입니까?

2025-03-22에 게시되었습니다
검색:103

Why Does Go Throw a

[type func ())는 "유형에 따라 타이핑을 시도한다는 것을 의미합니다. 이 경우, 인수는 특정 함수 서명이있는 MessageHandler 인터페이스의 구현을 기대합니다.

type MessageHandler func(MessageDelivery) (interface{}, error)

  • 가 메시지를 대신하여 메시지 핸들러 인터페이스의 예상 서명을 준수해야합니다. (인터페이스 {}, error)
  • 이것은 당신의 기능이 다음을 의미 함을 의미합니다 :

type MessageHandler func(MessageDelivery) (interface{}, error)

Why Does Go Throw a

오류가 발생합니다.

예 :

필요한 서명과 정렬하도록 기능을 수정합니다. s.reply (messagetest {strings.toupper (md.message. (string))}, md.delivery) Nil, Nil을 반환합니다 } func repeathandler (md messagedelivery) (인터페이스 {}, error) { s.reply (messagetest {strings.repeat (md.message. (string), 5)}, md.delivery) Nil, Nil을 반환합니다 }

이제 이러한 기능은 MessageHandler 인터페이스와 호환되며 ConsumerFunc () 메소드에 인수로 전달 될 수 있습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3