C/C++
狂风暴雨
这个作者很懒,什么都没留下…
展开
-
vector<int>::iterator mid=(vi.begin()+vi.end())/2
C++ Primer第四版 P88如果采用下面的计算方法来计算mid会产生什么结果?正确方法://用迭代器算术操作,初始化mid,使其指向vi中最靠近正中间的元素vector::iterator mid=vi.begin()+vi.size()/2;错误方法://如采用下面的方法来计算midvector::iterator mid=(vi.begin()+v原创 2012-06-09 15:40:58 · 4298 阅读 · 2 评论 -
C++ STL 之 Pair对组
1.pair在通用工具头文件中。#include pair可以将两个值视为一个单元,C++ STL中多处使用了这个类。尤其容器类map,multimap,就是使用pairs来管理其键/值(key/value)的成对元素。任何函数想返回2个的值都可以使用pair。比如:#include #include // pair 一对 数据 可用于 函数返回2个 数据u原创 2013-04-12 20:28:13 · 1795 阅读 · 0 评论 -
异步消息的传递-回调机制
简介: 软件模块之间总是存在着一定的接口,从调用方式上,可以把他们分为三类:同步调用、回调和异步调用。同步调用是一种阻塞式调用,调用方要等待对方执行完毕才返回,它是一种单向调用;回调是一种双向调用模式,也就是说,被调用方在接口被调用时也会调用对方的接口;异步调用是一种类似消息或事件的机制,不过它的调用方向刚好相反,接口的服务在收到某种讯息或发生某种事件时,会主动通知客户方(即调用客户方的接口)。回转载 2013-11-17 22:11:12 · 1037 阅读 · 0 评论 -
Qt 获取Cookie
Qt获取cookie非常简单。只要我们继承QNetworkCookieJar之后然后实现一个自己的获取cookie的接口,通过它的protected成员函数allCookies即可获得当前webview里面的浏览过页面所有保存的cookie了。 当然还需要通过当前webview的QNetworkAccessManager来把我们的cookie对象关联一下。.h#ifn原创 2013-11-25 21:48:22 · 16128 阅读 · 4 评论 -
Qt + CURL + mimetic 发送邮件(带附件)
/************************************************************************//* author : 狂风暴雨 * date : 2013年11月14日 14:11:49 * desc : 一份邮件的线程 * *//************************************************原创 2013-11-17 17:07:21 · 7613 阅读 · 0 评论 -
“当前不会命中断点。源代码与原始版本不同”的问题的有效解决办法
开发时有一个工程的一个文件的断点无效,VS 2005提示说当前不会命中断点。源代码与原始版本不同,请在断点选项里设置允许源代码与原始版本不同。这个是针对单个断点进行设置。如果要对所有的断点进行设置,则要在“工具”——〉“选项”——〉“调试”——〉“要求源文件与原始版本完成匹配”去掉勾。 实际上有比这个办法更好的办法,就是将出问题的文件用notepad打开,然后另存为Unicode编码原创 2013-08-04 19:29:05 · 831 阅读 · 0 评论 -
C++ 常量指针或者常量引用作为函数参数传递的原因
1.当传递较大的数据结构作为参数时,用引用或者指针作为函数参数可以节省 一个复制的过程,提高效率。看别人代码经常这样使用。想想为啥void Fun1(const classA&);void Fun2(const classA*);如果ClassA是大型的数据结构或者类,不使用&或者* 传递参数就会把实参赋值给一个临时的形参,将会浪费一些性能,使用指针或者引用传递将传递的是本身,提高了效率。原创 2013-07-19 13:34:54 · 5235 阅读 · 0 评论 -
被问号表达式坑了
问号式 A?B:C 值为:若A为真,则B;若A为假,则C。但有一点是值得注意的,那就是问号表达式的结合性,问号表达式是从右往左的运算方向尤其是当问号表达式嵌套使用时得注意这个问题,例如代码:int a=1,b=2,c=3,d=4;printf("%d",a正确结果是:1因为先执行的是c所以要想嵌套问号表达式最好加上括号原创 2013-07-01 19:13:58 · 1570 阅读 · 0 评论 -
C++ 常量指针或者常量引用作为函数参数传递的原因
1.当传递较大的数据结构作为参数时,用引用或者指针作为函数参数可以节省 一个复制的过程,提高效率。看别人代码经常这样使用。想想为啥void Fun1(const classA&);void Fun2(const classA*);如果ClassA是大型的数据结构或者类,不使用&或者* 传递参数就会把实参赋值给一个临时的形参,将会浪费一些性能,使用指针或者引用传递将传递的是本身,提高了效率原创 2013-05-05 20:04:34 · 2018 阅读 · 0 评论 -
C++ STL 之 auto_ptr
1.auto_ptr 是一种智能型指针(smart pointer)。#include 之后可以使用它。位于memory头文件。我们经常new一个对象,然后在不需要的时候在delete了它。//比如ClassA *ptr = new ClassA;//做一些事情delete ptr;但是我们常常忘记delete ptr,这样就会导致内存泄漏。但是有时就算我记得dele原创 2013-04-14 22:01:32 · 703 阅读 · 0 评论 -
字符串指针 与 字符数组
遇到群里一人问一面试题int main(){char *p="world";p[0]='2';printf("%s",p);}为什么错了自己也调试了运行了一下确实报错。这个是网上看到总结的还不错的。(1) char *s="hello"; //"hello"是字符串常量,s是指向常量的指针,常量是不允许改变的,不能写成s[0]=X,但可以改变指针的值,使其转载 2012-06-27 13:16:35 · 641 阅读 · 0 评论 -
Cocos2D-X v3.0 alpha1环境搭建
周末看了下Coco2D,感觉用起来还是挺爽的样子,跨平台,支持Windows, Linux, Mac, IOS, Android,WP...N多平台。。还是C++开源滴,果断下下来研究下。。最新版Coco2D-X v3.0 alpha1 项目目录下build文件夹下有个VS2012的项目工程,用VS打开编译下下, 把整个解决方案编译一下原创 2013-12-08 19:26:29 · 2989 阅读 · 0 评论