【发布时间】:2010-01-14 21:11:49
【问题描述】:
很遗憾,我并没有完全致力于自己开发的程序。 我最近注意到 unordered_set 的操作符上出现 Visual Studio 致命错误,它是通过简单插入指向 unordered_set 的指针来调用的。在查看了当地人之后,我注意到 set 只有 2 个元素,最后一个是 NULL(所以我想这就是它崩溃的原因)。现在问题是:(理论上)unordered_set(或任何其他 STL 容器)如何将 NULL 指针作为其元素之一。程序是多线程的,但根据我的评论,这部分代码只能从一个线程访问。谢谢。
调用堆栈和部分源代码供感兴趣的人参考: http://privatepaste.com/c8e7f35a4e(PushToProcessed是从Object本身调用的,它传递对自身的引用,所以不能为NULL)
【问题讨论】:
-
一些代码会很棒
-
您可能需要发布代码
-
unordered_set
-
unordered_set本身不是标准模板库的一部分。它是 tr1 的扩展。 (并且在 boost 中也很好地实现了。) -
哦好吧,对于其他容器(stl)仍然是实际的
标签: c++ access-violation tr1 fatal-error unordered-set