あなたが尋ねたあなたの質問への答えはイエスです...一般的なケースでは、任意のクラスと関数、およびクラスメンバー関数に対して機能します。プリミティブ型のテストに行き詰まっていません。のようなクラス メンバーのオーバーロードは機能operator==
するはずです。
operator==
しかし、この場合の問題は、 for std::string がグローバルなテンプレート化された演算子のオーバーロードであることに関係していると思います:
http://www.cplusplus.com/reference/string/operators/
したがって、宣言は次のようになります。
template<class charT, class traits, class Allocator>
bool operator==(const basic_string<charT,traits,Allocator>& rhs,
const charT* lhs );
gdb がその点を接続する方法を知らなくても、私は驚かないでしょう。
@ ks1322 が言ったことに加えて、C++ 領域に留まり、より単純にstd::string::compare()を使用できることに注意してください。
condition 1 myObject->myStringVar.compare("foo") == 0