unordered_map도 삽입, 나는 다음과 같은 오류가 발생 계속 :표준 : TR1 :: 구축 할 때 나는 표준 : TR1 :: unordered_map도의 삽입 기능을 사용할 수 없습니다 해요 오류
/usr/include/c++/4.2.1/tr1/hashtable:855:14: error: cannot initialize return object of type '_Node *' (aka '_Hash_node<std::pair<const unsigned long long, Order>, false> *') with an rvalue of type 'bool'
return false;
^~~~~
내 다음과 같이 압축 된 코드는 다음과 같습니다 나는 그것이 내가 키로 만도 int로 내가 같은 오류가 있음을 변경 한 후 오래 오래 사용했다는 사실과 함께해야 할 일을했을 어쩌면 생각
#include <tr1/unordered_map>
#include "handler.h"
#include "endian_tools.h"
using namespace std::tr1;
using namespace std;
unordered_map<uint64_t, Order> book_by_id;
uint64_t ref_num = be64toh(msg);
Order order(ref_num);
book_by_id.insert(make_pair<uint64_t,Order>(ref_num, order));
. 이견있는 사람? 이 오류가있는 다른 사용자를 온라인에서 찾을 수 없었습니다.
사용중인 컴파일러는 무엇입니까? – Ram
참고로,'std :: make_pair' 함수를 사용하는 이유는 타입을 명시 적으로 지정할 필요가 없기 때문입니다 (템플릿 타입 공제가 당신을 대신 해줍니다). 대신에 그냥'book_by_id.insert (make_pair (ref_num, order));' –
'tr1 :: unordered_map'을할까요? 귀하의 컴파일러는 몇 살입니까? – Borgleader