PHP 편집기 Xiaoxin이 "type abc 인터페이스{}"에 값을 삽입하는 방법을 소개하려고 왔습니다. PHP에서는 사양 세트를 정의하기 위해 인터페이스를 사용하는 경우가 많습니다. 때때로 인터페이스에서 기본값을 정의해야 하는 상황이 발생합니다. 이때 특성(feature)을 사용하여 이 기능을 구현할 수 있습니다. 특성은 여러 클래스에서 공유할 수 있는 코드 조각입니다. 특성을 사용하면 인터페이스에서 기본값을 정의하고 클래스에서 사용할 수 있습니다. 이 방법은 간단하고 이해하기 쉽습니다. 구체적인 구현 단계를 살펴보겠습니다!
type abc [][] 接口{}
이것을 시도했습니다:
insert := &abc{{0, {"abc", "def"}}}
이렇게 하면 오류가 발생합니다: 无效的复合文字类型:接口{}
저도 이것을 시도했습니다:
insert, _ := json.Marshal([][]interface{}{{0, {"abc", "def"}}})
하지만 이것도 오류가 발생합니다 Invalid Composite Literal Type: interface{}
다음과 같이 출력되기를 원합니다.
[ [ 0, [ "abc", "def" ] ]
제가 어디에서 잘못되고 있는지, 어떻게 해결하는지 알려주실 수 있나요?
abc
的类型允许任何类型,但是需要定义您放入其中的内容的类型。您没有定义 {"abc", "def"}
유형 및 인터페이스 리터럴은 인스턴스화할 수 없습니다(인터페이스는 컴파일러에 필드에 대해 아무 것도 알려주지 않습니다). 익명 구조를 가질 수 있지만 여전히 정의해야 합니다.
예를 들어 지금 가지고 있는 내용을 살펴보겠습니다.
으아악항목이 없는 외부 배열을 만듭니다.
으아악3개의 빈 내부 배열을 사용하여 외부 배열을 만듭니다.
으아악2개의 값을 갖는 내부 배열이 있는 외부 배열: 0
和 "abc"
.
2개의 값을 갖는 내부 배열이 있는 외부 배열: 0
和......什么?这是一个对象字面量,但没有显式类型,也没有语法上正确的隐式类型(隐式地期望 interface{}
직접 인스턴스화할 수 없음) 이는 오류입니다.
이제 문제의 구조에 입력되었습니다.
으아악익명 구조 역시 추악하지만 효과적인 접근 방식입니다.
으아악원하시는 바에 가장 가까운 것 같습니다.
규칙은 interface{}
可以保存任何定义的东西。它不等同于 c# 的 dynamic
개체입니다.
위 내용은 'type abc 인터페이스{}'에 값을 삽입하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!