c++
xiaoanian
这个作者很懒,什么都没留下…
展开
-
c/c++ redefinition的解决方法
明明只定义了一次,偏偏报redefinition的错误。原因是头文件头尾没有加宏定义,造成了头文件的多次include。原创 2012-04-27 18:15:47 · 6377 阅读 · 0 评论 -
C++ STL map 删除元素的问题
定义个一个map,key类型为int,value类型为一个指针。删除map的元素,不能是 map[key]=NULL这种做法没有删除对,而改成了只能是 iterator it=map.find(key); if(it!=map.end()) map.erase(it);另外,在遍历删除元素时,注意断链问题: ht原创 2012-12-20 15:07:36 · 4408 阅读 · 0 评论 -
gcc编译出现field 'xxx' has incomplete type的问题
一般情况下,是由于向前引用或递归引用自身造成的,网上已经有很多讨论了,比如:http://bbs.csdn.net/topics/200003470http://bbs.csdn.net/topics/30097292http://blog.csdn.net/xlfb8057/article/details/2814768但是,最近写程序时又出现了该问题,使用前向引用声原创 2013-01-12 21:34:51 · 6038 阅读 · 0 评论 -
linux c++ undefined reference
一个c++工程中用到了自己写的c静态库。但是makefile文件怎么改都不对,老是undefined reference的问题。看了这篇文章,undefined reference问题总结 发现c++程序在调用c库的时候,其头文件要被 extern "C" 包围。又简单查了一下原因,这里说得很清楚:Why do we need extern “C”{ #include } i转载 2013-04-23 18:24:14 · 1316 阅读 · 0 评论