(따로 STLport를 깔지 않았고, 걍 .NET 2003에서 <string>선언만 했습니다-_-)


STL의 string을 벡터에 집어넣었습니다.

모양은 이리됩니다만...

struct LABEL_INDEX
{
string label;
int lineNumber;
}

그리고, vector<LABEL_INDEX> m_labelList; 으로 선언을 하고나서...

~~if와 for로 점철된 루프~~
...
LABEL_INDEX label;
sscanf(line, "%s", label.labelName.c_str());
label.lineNumber = loadedLine;
m_labelList.push_back(label);
...
~~ if 끝 ~~

뭐 요렇게 집어넣었습니다만-

... 안들어가지는군요-_-
(디버깅창에서 m_labelList 내용을 보면 푸시백을 지나갔는데도 첫 요소가 비어있더군요)


또,

int CScriptManager::gotoLineFromLabel(string indexName)

이 함수에다가...

sscanf(m_commandLines[m_currentLine].c_str(), "%s %s", &categoryName, labelName.c_str());
gotoLineFromLabel(labelName);

이런식으로 명령어를 받아서 실행하도록 하니까
이게 함수 인자로 받은게 내용이 텅텅 비어있네요-_-

죄다 char 배열로 바꿔버리니 모두 잘 돌아가긴 합니다만...

원인을 알고 싶은데요, 어째서 이런 일이 발생하는걸까요;