ハッシュマップの実装を含むC++プログラミングクラスの割り当てに取り組んでいます。インストラクターから、ハッシュマップクラスで使用する必要のあるヘッダーファイルが提供されました。提供されたヘッダーファイルには、次の行が含まれています。
typedef std::function<unsigned int(const std::string&)> HashFunction;
私の(限定された)C ++の理解から、これはHashFunction型をstd::functionとして定義します。ただし、コードをコンパイルすると、次のエラーが発生します。
./HashMap.h:46:15: error: no type named 'function' in namespace 'std'
typedef std::function<unsigned int(const std::string&)> HashFunction;
~~~~~^
./HashMap.h:46:23: error: expected member name or ';' after declaration specifiers
typedef std::function<unsigned int(const std::string&)> HashFunction;
~~~~~~~~~~~~~~~~~~~~~^
HashMap.hファイルには
#include <functional>
それが重要な場合は、上部にあります。
なぜ私がこれらのエラーを受け取るのか誰かが知っていますか?