为的是实现一个 LRU Cache. 用 hashmap 和双向链表实现,有两个接口:
T get(K key); void put(K key, T data); 可是运行出现 segmentation fault,不知道是什么原因...

为的是实现一个 LRU Cache. 用 hashmap 和双向链表实现,有两个接口:
T get(K key); void put(K key, T data); 可是运行出现 segmentation fault,不知道是什么原因...
1 diablocy Jan 18, 2015 无条件执行 count++ |
2 bombless Jan 18, 2015 void put(...) { if (node) { ... } else { ... node->key = key; ... 看到没有,node的值是零,你非要给它赋值 |
3 diablocy Jan 18, 2015 恩,ls说的也是问题, 没有new node |
4 msg7086 Jan 18, 2015 我做leetcode的LRU Cache是用的unordered_map+list来做的。 一般没必要的话最好用STL而不是自己造轮子。 |
5 vietor Jan 18, 2015 via Android 临界区? |
6 clowwindy Jan 18, 2015 |
7 noli Jan 18, 2015 gdb lldb 什么的……不是跟踪一下就有了吗? |
10 yhf OP @clowwindy 最后这行 (Node<int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > *) $0 = 0x0000000000000000 是什么意思? |
12 yuankui Jan 19, 2015 看成了 [实在是搞不明白为什么会出现 segmentfault.com] 。。 羞愧。 |
14 acgeo Jan 19, 2015 多半数组越界 |