此代码仅在我取消注释时才有效
//else return "null";
在第 9 行,但这不是我需要的。我试着用
else continue;
但它也行不通。"currentCommand" 是一个 c 风格的字符串。
std::string Parser::dest(){
//Determines whether C-command has a dest mnemonic
bool hasDest = false;
for (int i=0; i<strlen(currentCommand); i++){
if (currentCommand[i] == '='){
hasDest = true;
break;
}
//else return "null";
}
if (hasDest == false) return "null";
std::string destm;
char temp;
int index = 0;
temp = currentCommand[index];
while (temp != '='){
destm += temp;
index++;
}
return destm;
}
当我调用这个函数时我应该得到一个输出,当我取消注释时我得到它//else return "null"
..但这不是我需要的输出。但是当我将该行注释掉时,我没有得到任何输出,过了一会儿出现了这个错误:
在抛出 'std::bad_alloc' 的实例后调用终止
什么():std::bad_alloc
1中止(核心转储)