>  기사  >  백엔드 개발  >  Golang 포인터 혼동, 함수에서 포인터를 가져온 다음 수정 함수에 전달하는 방법

Golang 포인터 혼동, 함수에서 포인터를 가져온 다음 수정 함수에 전달하는 방법

WBOY
WBOY앞으로
2024-02-06 10:39:03577검색

Golang 指针混淆,如何从函数获取指针,然后传递给修改函数

질문 내용

포인터 변수를 전달하고 라이브러리가 나중에 인스턴스로 채울 것으로 예상하는 라이브러리(golang walk 선언적)를 사용하고 싶습니다.

부기 목적으로 참조를 반환하는 함수를 만들고 추가로 전달하려고 시도했지만 원래 함수에서는 올바른 개체에 대한 참조를 반환하지 못했습니다.

문제를 단순화하려고 노력했지만 여전히 설정 함수를 수정하지 않고 test_ref 구조 내부의 맵에 값 세계를 채우는 방법을 올바르게 파악할 수 없습니다.

작업 코드

으아악

나의 시도

으아악

테스트 코드

으아악

설정 기능을 조금만 수정하면 작동되게 할 수 있는데 걷기 라이브러리를 업데이트하고 싶지 않아서 설정 기능을 건드리지 않고 이렇게 할 수 있는 방법이 없을지 궁금합니다.

<code>var t *walk.LineEdit
...
                    LineEdit{
                        AssignTo: &t,
                    },
</code>


정답


여기:

으아악

반환되는 것은 변수의 주소p입니다.

내 생각엔 이것이 당신이 하려는 일인 것 같습니다:

으아악

위는 지도에 저장된 s의 주소를 반환합니다. 그런 다음:

823화

이렇게 하면 문자열 값이 "world"로 설정됩니다.

더 나은 교육을 받고 다음을 수행할 수 있습니다.

으아악

위 내용은 Golang 포인터 혼동, 함수에서 포인터를 가져온 다음 수정 함수에 전달하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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