我一直在想办法解决这个问题。我很乐意让你们中的一些人有所建树,因为我全都没主意。
bool characterGetCFG1(string typeOverLoad, string var_name, string full_text) {
int pos = full_text.rfind(var_name) + var_name.length() + 1;
char character = full_text.at(pos);
if (character == 't' || 'T') {
cout << full_text << "\n";
cout << "features.assigned, " << var_name << ", " << full_text.at(pos) << ".\n";
cout << "returned true \n";
cout << character << "\n";
return true;
}else{
cout << "returned false \n";
return false;
}
void setconfig(glow_t passed_glow) {
ifstream file;
file.open("config.cfg");
if (!file.is_open()) {
exit(-10);
}
std::string raw;
while (file.good()) {
raw.assign(std::istreambuf_iterator<char>(file), std::istreambuf_iterator<char>());
file >> raw;
}
file.close();
feats.setGlow(characterGetCFG1("t", "glow", raw));
不用担心我在项目中有正确的括号,我可悲地不会将它们全部放入代码标签中。
编辑:我忘了在这里添加“ config.cfg”文件。
glow = false
答案 0 :(得分:1)
(character == 't' || 'T')
始终评估为true,前提是'T'
始终为true。您可能打算写if (character == 't' || character == 'T')
答案 1 :(得分:1)
您需要
character == 't' || character == 'T'
此:
character == 't' || 'T'
与
相同(character == 't') || ('T' != 0)
由于右侧的'T'
总是正确的。