golang에서 요소 유형이 명명된 유형이 아닌 슬라이스에 추가하는 방법

WBOY
풀어 주다: 2024-02-09 10:50:19
앞으로
1135명이 탐색했습니다.

golang에서 요소 유형이 명명된 유형이 아닌 슬라이스에 추가하는 방법

php editor Banana는 golang에서 요소 유형이 명명된 유형이 아닌 슬라이스에 첨부하는 방법을 소개합니다. Golang에서는 내장된 추가 기능을 사용하여 슬라이스에 요소를 추가할 수 있지만, 슬라이스의 요소 유형이 명명된 유형, 즉 익명 유형이 아닌 경우 먼저 임시 슬라이스를 생성한 다음 임시 슬라이스에 요소를 추가하고 마지막으로 임시 슬라이스의 요소를 원래 슬라이스에 다시 복사합니다. 이렇게 하면 요소를 추가할 때 원본 조각의 데이터가 손실되지 않습니다. 다음으로 이 프로세스의 구체적인 단계를 자세히 설명하겠습니다.

질문 내용

두 가지 구조가 있습니다:

으아악

이제 요소 유형이 명명된 이름이 아닌 responsequeryhotel.data.hotels에 항목을 추가해야 합니다. 그래서 나는 이것을 시도했습니다:

으아악

하지만 다음 오류가 발생합니다:

으아악

항목을 output.data.hotels (将有超过 1 个 responsequeryhotelsdataappend)에 어떻게 첨부해야 하나요?

그런데 구조를 변경할 수는 없습니다(제가 통제할 수 없는 일입니다).

해결 방법

여러 번 사용해야 하는 경우 동일한 기본 유형에 대한 별칭을 정의하세요.

으아악

또는 한 번만 필요한 경우 구조체 유형을 제자리에 선언하세요.

으아악

golang 사양distributability 섹션에는 다음과 같이 명시되어 있습니다.

다음 조건 중 하나가 참인 경우 v 유형의 값 x는 t 유형의 변수에 할당 가능합니다("x는 t에 할당 가능").

  • v는 t와 동일합니다.
  • v와 t는 기본 유형이 동일하지만 유형 매개변수가 아니며 v 또는 t 중 하나 이상이 명명된 유형이 아닙니다.
  • v와 t는 동일한 요소 유형을 가진 채널 유형이고, v는 양방향 채널이며, v 또는 t 중 하나 이상이 명명된 유형이 아닙니다.
  • t는 인터페이스 유형이지만 유형 매개변수는 아니며 x는 t를 구현합니다.
  • x는 미리 선언된 식별자 nil이고 t는 포인터, 함수, 슬라이스, 맵, 채널 또는 인터페이스 유형이지만 유형 매개변수는 아닙니다.
  • x는 t 유형의 값으로 표현될 수 있는 유형이 지정되지 않은 상수입니다.

위 내용은 golang에서 요소 유형이 명명된 유형이 아닌 슬라이스에 추가하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:stackoverflow.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!