私はいくつかの固定長配列を持ち、それらを比較したいと思っています。C++の生メモリを比較することは可能ですか?
struct Foo
{
/// the data, not necessarily int and not necessarily length 32
int val[32];
/// simple way
inline bool compare1(const NAME_CELL & rhs) const
{
for (unsigned int ui = 0; ui < 32; ++ui)
{
if (val[ui] != rhs.val[ui])
{
return false;
}
}
return true;
}
/// compare memory directly instead of using a loop. Is this faster?
inline bool compare2(const NAME_CELL & rhs) const
{
return memcmp(val, rhs.val, 32 * sizeof(int)) == 0;
}
};
compare1は、比較2よりも遅く、速く、等しいか?もっと速い方法がありますか?あなたがval
の要素をを初期化しました場合を除き
私はあなたが 'memcmp'を意味すると思いますか? –
また、あなたのタイトルには "C"と書かれていますが、この "C++"とタグ付けされています - これはあなたの話ですか? –
ありがとう、タイトルを修正しました。私の質問はC開発者にも関係するかもしれませんが、私はC++を使用しています。 – Fabian