2014年1月7日

C++ string warning C4251

摘要: 有一次在项目中用到C++的string (以前一直是用C的,对于C++的一些特性不是很了解),记录下遇到的一些问题。整个项目有一个DLL和一个exe程序,DLL的类成员里面使用的一些string(主要是用它的find 、+的功能),在编译的时候有warning C4251的警告,F5运行程序没有什么问题,但是直接打开exe的时候就崩溃了,怀疑和这个C4251有关,在网上查看了一下发现string类并不是一个DLL的导出类,程序在执行的时候,可能会调用不动的DLL库,有些说的添加template class __declspec( dllexport ) std::***没有用,警告依然在,程序 阅读全文

posted @ 2014-01-07 17:40 衣带渐宽-- 阅读(1060) 评论(0) 推荐(1) 编辑

2013年12月18日

你不知道的代码规范---摘自《软件随想录》

摘要: 这个是从《软件随想录》一书中看到的,感觉和大学中老师教的,现在公司用的,完全不一样。虽然说代码规范只要合适自己团队的就好,但是看到这些我还是震精了... 阅读全文

posted @ 2013-12-18 13:21 衣带渐宽-- 阅读(204) 评论(0) 推荐(0) 编辑

ffmpeg avcodec_decode_video2 解码失败

摘要: 最近在研究ffmpeg 编解码,记录下遇到的一些问题。MP4解码播放1.在网上找的解码播放代码,打开一个MP4文件,读取媒体格式信息,读取帧数据,解码,贴图显示,这些都很顺利。2.想着把这块的内容封装一下,可以直接播放H264流,但是在这里花了一些时间,播放H264裸流文件是没有问题的,但是从MP4文件里面提取H264文件播放就不行了,主要是网上找到的一些东西说的不太准确。 a.av_read_frame读取MP4文件出来的数据,avpacket.data里面包含的可能不止一帧,这个可以根据前面4个字节判断一下。 b.获取avpacket.data里面的每一帧,然后把前四个字节(一帧的长度.. 阅读全文

posted @ 2013-12-18 13:00 衣带渐宽-- 阅读(3935) 评论(0) 推荐(0) 编辑

2013年6月6日

TCP连接异常断开

摘要: 项目终于上线了,伴随着人数的逐步上升,最近查看日志,发现了大量连接超时的日志。项目中使用的是TCP长连接,为了保证网络资源及时有效的释放,程序中是1分钟一次心跳,3分钟无心跳即认为超时。此为本文的背景 相对于TCP连接建立时的三次握手,我想很多人对断开连接的四次招呼就不是那么熟了,这里先谈一下TCP的断开,下面给出TCP断开连接的过程图: (peakflys注:TIME_WAIT状态到CLOSED状态的转变视SO_LINGER选项的设置) 从上图可以看到,在服务器不主动关闭客户端TCP连接的情况下,需要客户端发送一个FIN分节,然后服务器端OS TCP栈对这个数据包回复ACK后,服务器处理程序 阅读全文

posted @ 2013-06-06 15:22 衣带渐宽-- 阅读(2595) 评论(0) 推荐(0) 编辑

2012年8月4日

Windows Live Mail Error:80072efd

摘要: 根据您提供的信息,我们了解到您目前无法登录到Windows Live Messenger,出现错误代码80072EFD,我们非常了解由此给您使用中带来的不便,请您不必担心。导致该问题的原因同防火墙封锁了Windows Live Messenger到因特网的联机、安全性链接库已损毁或代理服务器设定不正确等因素有关,我们建议您按照下列步骤进行操作。一、请您访问Windows Update 网站确认是否安装了最新的更新:1.首先,请您先开启Microsoft Internet Explorer,访问http://windowsupdate.microsoft.com;2.如果系统提示您是否需要安装“ 阅读全文

posted @ 2012-08-04 21:51 衣带渐宽-- 阅读(428) 评论(0) 推荐(1) 编辑

C++ 友元

摘要: 采用类的机制后实现了数据的隐藏与封装,类的数据成员一般定义为私有成员,成员函数一般定义为公有的,依此提供类与外界间的通信接口。但是,有时需要定义一些函数,这些函数不是类的一部分,但又需要频繁地访问类的数据成员,这时可以将这些函数定义为该函数的友元函数。除了友元函数外,还有友元类,两者统称为友元。友元的作用是提高了程序的运行效率(即减少了类型检查和安全性检查等都需要时间开销),但它破坏了类的封装性和隐藏性,使得非成员函数可以访问类的私有成员。友元函数 :友元函数是可以直接访问类的私有成员的非成员函数。它是定义在类外的普通函数,它不属于任何类,但需要在类的定义中加以声明,声明时只需在友元的名称前加 阅读全文

posted @ 2012-08-04 21:13 衣带渐宽-- 阅读(151) 评论(0) 推荐(0) 编辑

导航