- 博客(15)
- 资源 (18)
- 收藏
- 关注
原创 windows下c++程序的检测
背景我们在发布程序后,需要对程序进行维护。一旦遇到问题需要及时定位问题并解决。这篇文章主要是记录如何在程序中加入必要的检测工具来帮助我们尽快的定位问题的方法。程序捕捉crash的方法开源程序程序运行难免会出现crash的情况。在用户现场发送时,如果需要用户介入进行数据收集,就会严重降低用户体验。为了将crash的采集、上送都进行自动化完成,就需要我们在程序中完成此步骤。恰好存在一个开源的软件crashrpt(http://crashrpt.sourceforge.net/),可以用来采集和上送cr
2022-05-20 16:44:31 806
原创 c++中的智能指针
c++中的智能指针C++11中新增的智能指针unique_ptrshared_ptrweak_ptr功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入C++11中新增的智能指针c++是一门讲究效率的语言,这就导致很多的内存管理需要
2022-03-19 19:57:17 1048
原创 回调函数的面向对象设计
面向对象的回调函数过程语言c的设计方法,在面向对象的语言c++中都有对应的实现方法。而回调函数的面向对象的设计方法一直困扰着我,没有找到一种合适的面向对象的c++的方法来替代c的方法。今天在学习设计模式时,发现了一种设计模式,特别适合用于回调函数的实现。故记录下来,以备后续的温习。 回调函数,是c语言中两个进程(线程)间交互的一个重要的手段。面向对象的语言同样可以实现同样的功能。可参照设计模式的c
2017-01-04 16:11:52 1770
原创 QThread的用法:开启与退出
QThread有两种用法,一、用moveToThread()将功能类移入到线程QThread中,这个用法可以参照这篇博客:http://blog.csdn.net/lynfam/article/details/7081757,文章讲的深入浅出,层层递进,非常值得一读; 二、还有一种方法就是继承QThread,在run函数中实现子线程,本文主要是讲这种方法的注意事项。QThread::run()是
2016-11-16 19:03:53 50841 1
原创 Qt插件的线程化
Qt插件Qt插件就是定义一组固定接口的动态库,接口定义如下:class WidgetInterface : public QObject{ Q_OBJECTpublic: virtual ~WidgetInterface() {} virtual void SetPluginParent(QWidget* parent)=0; virtual QWidget* Ge
2016-08-30 19:29:02 1016 2
原创 Ubuntu修改软件源的方法
sources.list作用的总结Ubuntu中软件更新的源服务器地址存储再/etc/apt/soures.list中。文件中的内容如下: deb http://archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu/ trusty-sec
2016-08-14 19:34:34 26583
原创 工厂模式与抽象工厂的比较
工厂模式:定义一个用于创建对象的接口,让子类觉得实例化哪一个类。Factory Method使一个类的实例化延迟到了子类。抽象工厂类:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。二者的区别: 工厂模式:可以选择实例化具体的哪一个类,而且工厂类创建实例有很大的自由度,可以自由选择组合和基础已有的工 厂类和产品类。
2016-03-25 09:31:19 480
原创 Python中的变量
我是从事C/C++开发的,出于兴趣开始自学python。学习Python时任然收到C/C++的影响,其中最大的感受就是变量。 在C/C++中每个变量都是有特定的类型,这样编译器就可以为之分配内存: int fbw_channels; int channels; in
2015-06-02 21:23:53 391
转载 C++中explicit关键字的作用
explicit用来防止由构造函数定义的隐式转换。 要明白它的作用,首先要了解隐式转换:可以用单个实参来调用的构造函数定义了从形参类型到该类类型的一个隐式转换。例如: class things{ public: things(const std::string&name =""): m_name(name),
2014-09-01 17:04:08 587
原创 vc6.0下live555编译失败的原因
这是我遇到的vc调试问题,记录下来以便以后查找live555在vc6.0下编译的过程就不说了,网上有一堆。我的问题是在保所有工程加入到workspace中时遇到的。编译没有问题,运行也没有问题。就是在ffplay请求播放时显示DESCRIBE连接错误。解决方法:这是因为我的project->set active project中的设置出错了,选择你要运行的文件就可以了。这是vc不熟
2011-06-23 16:24:00 482
gdb命令手册-完整版
2010-04-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人