2012-08-17 2 views
0

루프에 세트를 생성 할 수 있습니까? 루프에 세트의 새 이름이 생깁니 까? 난 그냥 데이터 조작에 대한 몇 가지 더 많은 기능을 제공하지만 그렇지 않으면 집합 C에 내장 한 ++ 표준과 동일하다 설정 ++ 전통적인 C의 약간 수정 된 버전을 사용하고루프에서 세트 생성

//create storage structure for options according to hops 
int lengthOfStart = start.length(); 
for (int i = 0; i<start.length();++i) { 
    string nameOfSet = "Hop" + i; 
    Set<string> nameOfSet;   
    wordLadderOptions.enqueue(nameOfSet); 

} 

: 나는 다음을 수행하려고 도서관. 내가 Set<string> nameOfSet;라고 말할 때, 컴파일러는 이것을 변수의 실제 이름으로 보지 않습니다 ...

변수 i에 기반한 for 루프에서 세트를 생성하려면 어떻게해야할까요? 값?

+2

벡터와 비슷한 사운드가 더 적합합니다. 'hop0'과'hop1'은'hop [0]'과'hop [1]'에서 어떤 이점이 있습니까? – chris

+0

http://stackoverflow.com/questions/7143120/convert-string-to-variable-name-or-variable-type과 거의 같은 질문입니다. (배경이 많이있는 다른 게시물에는 더 많은 링크가 있습니다. 정보) – jogojapan

+0

각 세트에는 특별한 순서가없는 일련의 단어가 들어 있습니다. 나중에이 단어들 각각을 반복 할 필요가 있습니다 ... 단지 세트가 더 좋을 거라고 생각하는 단어를 btw로 정렬하지 않는다는 사실에 근거해서 말입니다. – rrazd

답변

2

컴파일 후에 디버깅 정보와 별도로 변수 이름이 C++에 존재하지 않습니다. 따라서 귀하의 요청은 그다지 의미가 없습니다. 아마도 각 집합과 이름을 연결하고 map<string, Set>에 붙여야할까요?

실제로 파이썬과 같은 언어로이 일을하게됩니다. 그 일은 배경에서 일어나는 일입니다. 유일한 차이점은 런타임시 변수 이름이 딕셔너리에서 암시 적으로 조회된다는 것입니다.

관련 문제