>백엔드 개발 >Golang >func(*TCPConn)는 인수가 포인터가 아니더라도 업데이트된 바이트 값을 읽습니다.

func(*TCPConn)는 인수가 포인터가 아니더라도 업데이트된 바이트 값을 읽습니다.

王林
王林앞으로
2024-02-06 09:20:03503검색

func (*TCPConn) 读取更新字节值,即使参数不是指针

질문 내용

Golang 메서드/함수 매개변수에 대해 제가 이해한 바는 값별 호출을 통해 작동한다는 것입니다. 하지만 매개변수가 포인터가 아니지만 호출자의 변수 값을 업데이트하는 func (c *TCPConn) Read(b []byte) (int, error) 메서드 호출을 발견했습니다. 뭔가 빠진 것 같아요. 이 사건을 이해하도록 도와주세요. call by value来工作。但我遇到了这个方法调用 func (c *TCPConn) Read(b []byte) (int, error) ,其中参数是非指针,但它更新调用者中的变量值。我想我错过了一些东西。请帮助理解这个案例。


正确答案


这取决于该参数的类型。 []byte

정답

매개변수 유형에 따라 다릅니다. []byte는 슬라이스이고 슬라이스는 실제로 포인터와 같습니다. 맵도 포인터이므로 함수에서 슬라이스와 맵을 사용할 때 이 점을 고려하십시오.

🎜https://www.php.cn/link/5d9e4a04afb9f3608ccc76c1ffa7573e🎜:🎜

위 내용은 func(*TCPConn)는 인수가 포인터가 아니더라도 업데이트된 바이트 값을 읽습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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