![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
文章平均质量分 75
lcydhr
虽有智慧,不如借势。
展开
-
让你的C++代码变的更加健壮
介绍在实际的项目中,当项目的代码量不断增加的时候,你会发现越来越难管理和跟踪其各个组件,如其不善,很容易就引入BUG。因此,我们应该掌握一些能让我们程序更加健壮的方法。这篇文章提出了一些建议,能有引导我们写出更加健壮的代码,以避免产生灾难性的错误。即使、因为其复杂性和项目团队结构,你的程序目前不遵循任何编码规则,按照下面列出的简单的规则可以帮助您避免大多数的崩溃情况。背景转载 2016-04-21 10:27:57 · 464 阅读 · 0 评论 -
[转载]使用cmake编译开源库
原文地址:使用cmake编译开源库作者:追寻中de四叶草第一次使用cmake是在刚接触VTK的时候,需要自己从源码编译出可供调用的VTK库文件。之后使用OpenCV再次用到了cmake,不过一直都是按着网上的教程一步步操作。用了几次之后才开始对其中的步骤有所理解,明白为什么要这么做。因为很多开源的库都需要进行类似的编译过程以适应不同的开发需求和开发环境,所以在此进行简单的总结,以备将来转载 2016-09-18 15:58:15 · 2113 阅读 · 0 评论 -
C++使用static的错误:无法解析的外部符号、“static”不应在文件范围内定义的成员函数上使用
/ static_test.h : 头文件 002 #pragma once 003 004 class static_test 005 { 006 public: 007 static_test();//默认构造函数 008 void set(int x, int y, int z);//成员变量初始化 009 int转载 2016-09-23 09:45:01 · 1257 阅读 · 0 评论 -
C++new失败的处理
我们都知道,使用 malloc/calloc 等分配内存的函数时,一定要检查其返回值是否为“空指针”(亦即检查分配内存的操作是否成功),这是良好的编程习惯,也是编写可靠程序所必需的。但是,如 果你简单地把这一招应用到 new 上,那可就不一定正确了。我经常看到类似这样的代码: int* p = new int[SIZE]; if ( p == 0 ) // 检查转载 2016-09-21 18:08:31 · 291 阅读 · 0 评论 -
为什么直接杀死线程是不好的
我们知道,windows里有个API叫TerminateThread,它可以干掉任何正在欢快小跑的线程。对应的,liunx里则是pthread_cancel(不是pthread_kill,这玩意本质是向线程发信号,而不是杀死线程)加上PTHREAD_CANCEL_ASYNCHRONOUS。但是我们同时也看到,不论是哪种方法,在它们的手册里都不推荐我们使用它们。比如微软的msdn中对转载 2016-09-28 09:54:53 · 3127 阅读 · 0 评论