, 내가 쉽게 내가 잘 알고 오전 정적으로 입력 된 언어로, 그러나 다양한 유형의 값을 포함하는 목록, 예컨대 :정적 유형의 언어가 이기종 목록을 지원할 수 있습니까? 파이썬에서
[0, 1.0, '2', MyClass(3)]
를 만들 수 있습니다, 목록은 단일 유형의 값을 포함 할 수 있습니다. 예를 들어, C++의 std::vector<T>
은 T
유형의 값만 보유 할 수 있습니다. C#의 List<T>
도 비슷합니다.
정적 유형 언어가 이기종 목록을 지원할 수 있습니까? 그렇다면 어떤 언어가 그런 지원을합니까?
'boost :: any' 유형의 목록을 가질 수 있습니다. 'any'는 C++ 17의 표준으로 받아 들여졌지만 구현이 가능한지 확실하지 않습니다. 요소에 아무 것도 저장할 수 있도록 형식 지우기라는 기술을 사용합니다. 이것에 대한 단점은 내가 아는 한 항목이 사전 정의 된 인터페이스를 준수해야하거나 사용하기 전에 캐스트해야한다는 것입니다. –