私は心の中で、これは.cpp
ファイルで使用する必要があります。これは文字列をこのように比較するのに適したスタイルですか?
namespace
{
bool operator==(char const* const a, char const* const b) noexcept
{
return !::std::strcmp(a, b);
}
}
はこの良いスタイルですか?
EDIT:
私は同じことを達成++ 1Z方法、上品cは、比較のための新しいstd::string_view
クラスを使用することだと思います。
それは純粋に意見に基づいていますが、私は少なくともそのような構成で混乱していました。 IMHO、 'strcmp(a、b)== 0'が良いです。 – Leon
これはまったくコンパイルされますか? IIRCでは、組み込み型の演算子オーバーロードを提供することはできません。 –
私は '!std :: strcmp(a、b)'を使い慣れていない構築物に隠そうとするのではなく、そのまま使用します。 '=='と '' const char * ''を同じように使用すると、セマンティクスが変更されます。それはたぶん違法だ。 – Galik