![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
liqiming100
这个作者很懒,什么都没留下…
展开
-
C++中指针,引用,const,static总结
C++中比较难掌握的就是指针及其相关的知识。指针的类型必须与所指对象类型一致,但是有两个例外:1.允许一个常量指针指向非常量对象double dvalue=3.14;const double *cptr;cptr=&dvalue;//但是不能通过这个指针改变dvalue的值,因为cptr指针是const。2.允许将基类的指针或引用绑定到派生类对象上(这也是动原创 2017-04-11 10:05:02 · 314 阅读 · 0 评论 -
C++中vector当作字典来用的典型例子
leetcode 题目:Longest Substring Without Repeating Charactersint lengthOfLongestSubstring(string s) { vector<int> dict(256, -1); int maxLen = 0, start = -1; for (int i = 0; i !...原创 2018-04-21 22:09:48 · 3659 阅读 · 0 评论 -
MFC 中出现这种错误winhand.cpp line 218
MFC 中出现这种错误winhand.cpp line 218通常是DC 没有正确释放造成的原创 2017-07-31 19:20:18 · 1120 阅读 · 0 评论 -
CPaintDC 、CWindowDC、 CClientDC、 CDC的区别与联系
CPaintDC 、CWindowDC、 CClientDC、 CDC关系图:一句话概括:CPaintDC 无效区dc, 相当于BeginPaint, EndPaint CClientDC 客户区dc, 相当于GetDC, ReleaseDC CWindowDC 整窗口dc, 相当于Ge转载 2017-06-27 21:14:31 · 325 阅读 · 0 评论 -
Windows Gdi & CDC和HDC的区别与转换
一,GDI基础 GDI的绘图函数基本上都是有状态的,所有的函数都要求一个HDC类型的句柄。这个HDC的获得有几个途径BeginPaint,GetWindowDC, GetDC.他们的参数都只需要一个HWND就差不多了。记得调用了BeginPaint后要调用EndPaint进行清理,调用GetWindowDC和GetDC后要调ReleaseDC进行清理。 而在MFC转载 2017-06-27 21:10:31 · 501 阅读 · 0 评论 -
MFC
http://www.jizhuomi.com/software/257.html原创 2017-06-14 17:58:02 · 226 阅读 · 0 评论 -
VS2010 调试C++项目 fatal error LNK1123 错误解决办法 ,为什么会这样
最近用VS2010写C++项目,奇怪的是每次生成解决方案都有一个fatal error LNK1123错误,提示生成失败。查阅资料总结解决方案如下:(1)项目——>属性——>连接器——>清单文件 中生成清单 “是” 修改为 “否” 该方法一般都可以解决问题,但是每次创建项目都要设置一遍。(2)查找是否有两个cvtres.exe 删除较旧版本。 第一个是在你原创 2017-06-14 17:46:16 · 510 阅读 · 0 评论 -
MFC中添加消息处理函数的步骤
如何在MFC中添加消息处理函数呢,不管是手动还是自动添加,大体上有下面三个步骤。1、在类应用中添加消息处理函数的声明,以基于对话框的应用为例,在XXXDlg.h(XXX是工程的名字)文件中添加类似如下的声明:afx_msg void OnPaint();//可以有参数也可以有返回值,这个视需求而定。当然,这里的OnPaint()是内置的绘图函数,没有返回值也没有参数。2、在类的原创 2017-06-24 15:32:30 · 4895 阅读 · 0 评论 -
Opencv数据结构Mat详解
我记得开始接触OpenCV就是因为一个算法里面需要2维动态数组,那时候看core这部分也算是走马观花吧,随着使用的增多,对Mat这个结构越来越喜爱,也觉得有必要温故而知新,于是这次再看看Mat。Mat最大的优势跟STL很相似,都是对内存进行动态的管理,不需要之前用户手动的管理内存,对于一些大型的开发,有时候投入的lpImage内存管理的时间甚至比关注算法实现的时间还要多,这显然是不合适的。除了转载 2017-06-23 11:30:46 · 225 阅读 · 0 评论 -
QT5学习
http://blog.csdn.net/louis_815/article/details/54286544转载 2017-06-22 09:08:19 · 197 阅读 · 0 评论 -
C++动态内存管理
原态指针常常容易导致内存泄露或者内存溢出。在新标准C++11中定义了智能指针,在很大程度上解决了这个问题。新标准库定义的两种类型的智能指针的区别在于管理底层指针的方式:shared_ptr允许多个指针指向同一个对象;unique_ptr则“独占”所指向的对象。标准库还定义了一个名为weak_ptr的伴随类,它是一种弱引用,指向shared_ptr所管理的对象。这三种类型都定义在memory头文件中原创 2017-06-21 14:32:44 · 226 阅读 · 0 评论 -
MFC-SpinControl(数值调节按钮)
Spin和Edit是配合使用的,如图: 然后设置它们的TAB键顺序,顺序必须是edit为1,spin为2. 查看并设置的步骤为: 格式->Tab 键顺序,如图: 这时候顺序不对,鼠标左键单击edit,如图: 设置好顺序之后就是关联它们,右键单击spin属性,设置Set Buddy Integer为TRUE,Auto Buddy也设置为TRUE接着去初转载 2017-06-19 10:59:14 · 686 阅读 · 0 评论 -
Windows7 visual studio 2010下MFC中正确使用GDI+的环境配置
鉴于网上大篇幅的GDI+配置没办法正确使用,这里写下自己的正确的配置,以备日后查阅。1、在项目属性中添加GDI+动态链接引入库打开项目,选择“项目”---->"XXX属性"命令(XXX是当前项目名称),打开项目属性对话框。展开“配置属性”列表,选择“链接器”下的“输入”选项,然后在“附加”依赖项中添加“gdiplus.lib”。2、初始化GDI+(1)打开解决方案资源管理器,打开s原创 2017-06-17 11:58:30 · 992 阅读 · 0 评论 -
VC++、MFC
改编:http://www.okbase.NET/home/haobao 介绍一下用VC++/MFC写的最好的开源项目。Sourceforge.net中有许多高质量的VC++开源项目,我列举了一些可以作为VC++程序员的参考。一、优秀的开源项目7-Zip (http://sourceforge.net/projects/sevenzip/)转载 2017-06-16 16:30:42 · 756 阅读 · 0 评论 -
继承中的public,protected,private
三种访问权限public:可以被任意实体访问protected:只允许子类及本类的成员函数访问private:只允许本类的成员函数访问 三种继承方式public 继承protect 继承private 继承 组合结果基类中 继承方式 子类中public & public继承 => publicpublic & protected继承 => pro转载 2017-04-15 21:32:51 · 320 阅读 · 0 评论 -
C++ 保留字之override
描述:override保留字表示当前函数重写了基类的虚函数。目的:1.在函数比较多的情况下可以提示读者某个函数重写了基类虚函数(表示这个虚函数是从基类继承,不是派生类自己定义的);2.强制编译器检查某个函数是否重写基类虚函数,如果没有则报错。用法:在类的成员函数参数列表后面添加该关键字既可。例子:class Base {virtual void f();};class Der转载 2017-04-15 20:24:17 · 527 阅读 · 0 评论 -
C++和C语言混合编译成库对外提供,第三方调用链接显示undefined refence 可能存在的原因
1、#ifdef __cplusplusextern "C"{#endif////这里是要对外提供的接口#ifdef __cplusplus}#endif2、用nm命令查看提供的动态库的内容:nm test.so | grep "all_init"如果返回t,那么说明你的CMakeLists.txt里面可能存在-fvisibility=hidden,导致函数对外不可见。详情请见https://st...原创 2018-06-28 14:30:25 · 562 阅读 · 0 评论