2011-05-01 3 views
0

"="연산자를 사용하여 연관 배열로 목록을 오버로드하는 방법에 대해 조언 해주십시오. 내가 사용하고있는 laungauge."="C++/CLI를 사용하여 목록에서 연관 배열을 하나의 항목으로 오버로드 함

나는 이런 식으로 뭔가를 달성 하다며합니다. myList에는 System::Collections::Generic::List<AssociativeArray<String^> ^> ^myList

당신의 날이에 대한 몇 가지 단서를 제공하시기 바랍니다 수

`myList[0]["Key"] = "1";` 

입니다.

사전에

감사합니다,
피터 K 요한

답변

3

왜 그냥 List<Dictionary<String^, String^>^>^를 사용하지 않는?

해당 구문은 이미 지원됩니다. , Dictionary 사용자의 요구를 (예를 들어, 대신 해시 테이블의 트라이 구조를 원하는)을 만족하지 못하는 그러나 경우

, 인덱서 구현은 다음과 같이 보일 것입니다 :

generic<typename T> 
ref class AssociativeArray 
{ 
    // implementation details 
    // ... 

public: 
    property T default[String^] 
    { 
     T get(String^ key) 
     { 
      T result; 
      if (!TryGetValue(key, result)) throw gcnew KeyNotFoundException(key); 
      return result; 
     } 

     void set(String^ key, T val) 
     { 
      SetValue(key, val); 
     } 
    } 
}; 
관련 문제