> 백엔드 개발 > Golang > 유형 별칭을 사용하여 go 배열 캐스팅

유형 별칭을 사용하여 go 배열 캐스팅

王林
풀어 주다: 2024-02-12 10:57:08
앞으로
561명이 탐색했습니다.

使用类型别名强制转换 go 数组

Go 언어에서는 유형 별칭을 사용하여 배열을 캐스팅하는 것이 일반적인 작업입니다. 유형 별칭은 유형 변환을 용이하게 하기 위해 기존 유형에 대한 새 이름을 만듭니다. 유형 별칭을 사용하면 배열을 다른 유형의 배열로 변환할 수 있습니다. 이러한 변환 작업은 Go 언어에서 매우 간단하며 코드의 가독성과 유지 관리성을 효과적으로 향상시킬 수 있습니다. 이 기사에서는 유형 별칭을 사용하여 Go 배열을 캐스팅하는 방법을 소개하고 독자가 이 개념을 더 잘 이해할 수 있도록 몇 가지 예를 제공합니다.

질문 내용

아래와 같이 바이트 배열인 정의된 유형 bytes이 있다고 가정해 보겠습니다. 바이트 배열 배열을 바이트 배열로 또는 그 반대로 변환하는 쉬운 방법이 있습니까?

package main

type Bytes []byte

func main() {
    x := make([][]byte, 3)
    y := ([]Bytes)(x)
}
로그인 후 복사

해결 방법

아니요. 불행히도 go에서는 별칭이더라도 서로 다른 유형 간의 직접 변환을 허용하지 않습니다. 별칭은 기존 유형에 새 이름을 부여하는 것과 비슷하지만 어떤 형태의 자동 변환도 제공하지 않습니다.

수동으로 [][]byte를 반복하고 각 []bytebytes 유형으로 변환해야 합니다.

구체적인 조작 방법은 다음과 같습니다.

으아아아

이 코드는 x를 수동으로 반복하여 각 []바이트바이트 로 변환하고 y의 해당 위치 에 배치합니다.

위 내용은 유형 별칭을 사용하여 go 배열 캐스팅의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:stackoverflow.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿