C++
VictaminC
CC与00
展开
-
C++类的继承笔记
老是忘记类的继承特性,把测试代码和结果记下来#include #include #include using namespace std;class ParentA{public: virtual void ptFun(){printf("class ParentA call!\n");}};class ChildB : public ParentA原创 2015-09-24 11:55:47 · 568 阅读 · 0 评论 -
C++项目中的extern "C" {}
引言在用C++的项目源码中,经常会不可避免的会看到下面的代码:123456789#ifdef __cplusplusextern "C" {#endif /*...*/ #ifdef __cplusplus}转载 2017-09-13 17:03:24 · 289 阅读 · 0 评论 -
i++和++i的区别
如果有表达式 a = i++ 它等价于 a = i ; i = i + 1; 如果有表达式 a = ++i 它等价于 i = i + 1; a = i; 1 首先两者的区别是:前者是先赋值,然后再自增;后者是先自增,后赋值 2 ++i和i++都是分两步完成的。因为++i 是后面一步才赋值的,所以它能够当作一个变量进行级联赋值转载 2017-05-19 22:46:25 · 413 阅读 · 0 评论 -
new和malloc的区别
转自 http://blog.csdn.net/zjc156m/article/details/168193571. malloc()函数1.1 malloc的全称是memory allocation,中文叫动态内存分配。原型:extern void *malloc(unsigned int num_bytes); 说明:分配长度为num_bytes字节的内存块。如果分配成功则返回指向被转载 2017-05-19 22:44:00 · 378 阅读 · 0 评论 -
live555编译
1、使用nmake在命令行编译(1).下载live555,http://www.live555.com/(2). 编辑 win32config,TOOLS32=C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC 即保证这个路径是你的Vs2008 路径。 (3). 编辑win32config, "LINK_OPTS_0 = $(li原创 2017-03-15 11:23:33 · 1462 阅读 · 0 评论 -
rtsp协议应用
rtsp协议应用转载自:http://www.rosoo.net/a/201108/14860.html,尊重原创!live555 项目[5] 中的RTSP 服务器实例mediaServer 使用了 实时传输协议 RTP 、 实时传输控制协议 RTCP 和 实时流协议 RTSP 三种流媒体协议。下面首先介绍RTSP 连接建立及请求响应过程,然后介绍RTP 数据包的封装及发送转载 2017-03-15 14:52:50 · 1160 阅读 · 0 评论 -
VS2008用devenv.com命令行工具自动编译工程
转自 http://www.cr173.com/html/18500_1.html在vs2008下面提供了devenv.com命令行方式,我们可以从VS安装目录..\MicrosoftVisual Studio 9\Common7\IDE下面找到它,以下是几个常见用法(VS 2005对应的目录下也有这样的工具):用法:devenv.com [solutionfil转载 2017-02-23 16:21:12 · 1315 阅读 · 0 评论 -
QT4.8实现饼图
由于项目需要,需要使用QT4.8绘制饼状图,也没有找到合适现成的第三方库,原本想用QWT实现,但找了半天,只有折线图,没有饼图,QT上的类也只有Q.5.5以后的版本才有饼图,最终还是得自己动手画。几个功能:1、标签不重叠2、大小尺寸随布局变化而自动变化3、鼠标移至上面有亮度变化效果主要难点就是实现标签不能重叠,重写 void mouseMoveEvent(QMouseEv原创 2017-01-13 17:27:06 · 6466 阅读 · 23 评论 -
获取系统磁盘、CPU、内存信息
使用sigar开源库 sigar_t* sigar_handle = NULL; sigar_open(&sigar_handle); sigar_mem_t mem_info; sigar_mem_get(sigar_handle, &mem_info); sigar_cpu_t pre_cpu_info; sigar_cpu_get(sigar_handle原创 2017-01-05 11:44:05 · 785 阅读 · 0 评论 -
QComboBox实现弹出窗口宽度大于输入窗口宽度
QStringList szBtnList; m_pComboSetting = new QComboBox(this); szBtnList << QString("苹果") \ << QString("雪梨") \ << QString("进口的苹果"); m_pComboSetting->setMaximumWi原创 2016-12-19 12:59:05 · 1348 阅读 · 0 评论 -
QtCreator C++ 对象被多次指定,已忽略多余的指定
QtCreator编译时提示 对象被多次指定,已忽略多余的指定原因:工程文件有添加了2次相同的文件删除一个即可原创 2016-12-19 12:12:23 · 1820 阅读 · 0 评论 -
内存泄露分析工具VLD
Visual Leak Detector下载,安装。把头文件放到工程源码路径,并在需要检查内存泄露的地方添加“include "vld.h"在把库连接进去注意,只能在DEBUG条件下才有用原创 2016-12-19 12:09:22 · 495 阅读 · 0 评论 -
JSONCPP的使用笔记
由于之前没有查看JSONCPP的相关文档,直接使用了,在JSON没匹配时,老是导致程序崩溃,后来懒得查相关说明,直接写了几个简单例子验证一下,结果如下:数组不能使用isString()等函数判断如 [ { } { } ]否则崩溃需要先使用isObject()判断以下情况,需先判断是否为数组,不然会崩溃char t[] = "{\"a\":原创 2016-12-19 12:08:31 · 1846 阅读 · 0 评论 -
(QT4.8.6)QtWebKit笔记---The script on this page appears to have a problem
(QT4.8.6)QtWebKit The script on this page appears to have a problem原创 2016-12-19 11:58:00 · 5463 阅读 · 0 评论 -
C++性能优化实践
C++的性能优化实践优化准则:1. 二八法则:在任何一组东西中,最重要的只占其中一小部分,约20%,其余80%的尽管是多数,却是次要的;在优化实践中,我们将精力集中在优化那20%最耗时的代码上,整体性能将有显著的提升;这个很好理解。函数A虽然代码量大,但在一次正常执行流程中,只调用了一次。而另一个函数B代码量比A小很多,但被调用了1000次。显然,我们更应关注B的优化。转载 2017-12-07 17:01:46 · 603 阅读 · 0 评论