質問が奇妙に聞こえるかもしれませんが、unordered_mapがあるstd :: stringキー最大サイズは8 + 1(ヌル終了の場合は1)です。std :: stringとun nullered_map :: nullのためのnullで終わる可能性のある文字配列の間のカスタムコンパレータ
私はchar(8)変数の文字列を受け取りました。これは、find()呼び出しのためだけにstrcpyをtemp std :: stringにしたくないということです。
何かコンパイラを実装する方法があるので、find()呼び出しでchar [8]を直接使用できますか?
char [8]には "12345678"(ヌル終了なし)が含まれている可能性があるので、デフォルトのstrcmpはおそらく動作しません。
64ビットマシンでは、1回の移動で8つの文字をコピーします。どのくらいあなた(マイクロ)がこれを最適化しますか? –
正しい。 'strncmp(lhs.data()、rhs、8)'はあなたが使いたい基本的なものです。 –
boost :: unordered_mapを使用していますか? –