Go 구조체 간 변환
여러 구조체로 작업할 때 한 구조체에서 다른 구조체로 데이터를 변환해야 하는 경우가 종종 있습니다. Go에서는 필드 임베딩이라는 기술을 통해 이를 달성할 수 있습니다.
다음 코드 조각을 고려하세요.
<code class="go">type A struct { a int b string } type B struct { A // field embedding of A c string // more fields }</code>
이 예에서 구조체 B는 구조체 A를 포함합니다. 즉, 구조체 B 자체 필드 외에도 구조체 A의 모든 필드를 포함합니다.
A 유형의 값을 B 유형으로 변환하려면 간단히 A의 필드를 B의 필드에 할당하면 됩니다. 예를 들면 다음과 같습니다.
<code class="go">func main() { structA := A{a: 42, b: "foo"} // assign structA to the embedded A field of structB structB := B{A: structA} }</code>
필드 임베딩을 통해 구조체 간에 쉽게 변환할 수 있으므로 필드를 수동으로 복사하거나 변환 방법을 만들 필요가 없습니다.
위 내용은 필드 임베딩을 사용하여 Go 구조체 간에 어떻게 변환할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!