私はこのようなコードを書きました:
#include<string>
using namespace std;
int main() {
string str;
...
if(str=="test") //valid????
//do something
...
return 0;
}
後でコードを読み直した後、コンパイラがどのようにエラーを出さなかったのか興味がありました。
注:参照をすでに確認しましたが、何らかのタイプの不一致エラーがあるはずです(文字列オブジェクトとcharの配列を比較)
編集:=to==タイプミスでごめんなさい。すでに修正されています
編集2:問題:
- reference(cppreference.com)で定義されているoperator ==(string、char *)またはoperator ==(string、char [])または同様の演算子はありません。
- char*またはchar[]から文字列への変換演算子はありません