C++高级编程笔记
Sir_wang
朝闻道,夕可死矣!为了成为IT高手,为了挽回我失去的青春,也为了我亲爱的家人,下决心刻苦学习编程知识,虽九死而不悔! 金头盔飞行员蒋佳冀:知道了不行,熟悉也不够,要真正进入潜意识,成为条件反射才行。
展开
-
C面向接口编程和C++多态案例
C/C++编程原则一条叫做,依赖倒置原则,即,依赖抽象而不依赖具体,当需要依赖一个类时,不应该直接依赖这个类的实例,而应该依赖这个类的父类接口。这里搜集了网上的资料,这个实例写的非常好。https://www.cnblogs.com/yongqiang/p/5731243.html...原创 2019-06-18 20:24:35 · 305 阅读 · 1 评论 -
基于mupdf的PDF阅读器
上一篇讲了基于poppler库的PDF阅读器的开发,这一篇来讲基于mupdf的PDF阅读器的开发。在上一篇的篇尾我有附效果图,可以很明显的看出来这个效果是非常差的,网络上有童鞋同样遇到了这个问题,并且做了修正,但是,经过测试完全没用(也可能是版本的问题),所以我不得不做新的尝试。 基于mupdf的PDF阅读器 同样的,先要去下载源码,进行解压编译。mupdf库比较好的一点是可以很简单...原创 2018-09-27 17:42:29 · 12157 阅读 · 9 评论 -
Qt下PDF阅读器的开发
目前linux 下基于Qt的PDF阅读器无外乎三种:将pdf加载到js上,利用QWebView显示 基于poppler库做二次开发 基于mupdf库做二次开发第一种资料较多,要求较低,故不做详细阐述;而后两种资料相对少很多,开发难度相对而言比较大,这里仅针对后两种。 基于poppler库做二次开发 首先需要去官网下载poppler库,然后解压,如果做快速开发,建议选择比较...原创 2018-09-27 17:22:54 · 7140 阅读 · 3 评论 -
VS2015使用opencv
windows下opencv开发环境搭建以及项目配置。1.下载opencv安装包:到OpenCV的官网(http://opencv.org/)下载OpenCV安装包,由于OpenCV针对不同平台都有安装程序,所以我们只需要根据当前开发环境选择合适的平台版本即可,这里我们是在win10 64bit操作系统下进行开发,所以应该下载OpenCV for Windows.在这里推荐使用迅雷下载,通...原创 2018-09-01 22:36:44 · 4738 阅读 · 0 评论 -
C++ MVC模式以及类的前置声明
MVC模式在日常软件设计中用得很多很多,本文以自动贩卖机为原型,以MVC模式进行设计。类的声明:sellor.h#include <QString>#include <QDebug>//注意这里的前置声明要和后边的实现分开,否则会导致编译不通过class SellerMOdel;class SellerView;//This is contro...原创 2018-08-09 15:30:01 · 894 阅读 · 0 评论 -
线程池
condition.h#ifndef CONDITION_H#define CONDITION_H#include <pthread.h>//封装一个互斥量和条件变量作为状态typedef struct condition{ pthread_mutex_t pmutex; pthread_cond_t pcond;}condition_t;//对状态的...原创 2018-05-28 16:39:43 · 259 阅读 · 0 评论 -
java与C++的不同(笔记)
早在去年就学习过Java核心技术卷1,然后一直没多少空学习卷2,最近学完了,然后开始学习Java数据结构和算法,这里做一点java与C++的不同的笔记。1、C++的指针与Java的引用(或者指针?)C++中:Date date; //创建了一个对象(类的实例),它是可以直接拿来用的,你可以用它来做任何你想做的事情;Java中:Date date; //你仅仅是声明了一个对象的引原创 2017-08-23 09:33:39 · 226 阅读 · 0 评论 -
分享一个交叉编译qt库的教程
http://blog.chinaunix.net/uid-11909535-id-2801695.html转载 2017-07-19 23:39:32 · 802 阅读 · 0 评论 -
linux下编写c++,include的那些头文件在什么地方
C/C++程序在linux下被编译和连接时,GCC/G++会查找系统默认的include和link的路径,以及自己在编译命令中指定的路径。1、#include ,直接到系统指定目录去查找头文件。系统默认路径为:/usr/include,/usr/local/include,/usr/lib/gcc-lib/i386-Linux/2.95.2/include(gcc库文件原创 2017-02-22 18:22:42 · 2685 阅读 · 0 评论 -
堆和栈的区别
在 上一篇博客中提到过堆和栈,但是堆和 栈的区别 并没有讲清楚 堆和栈的区别: 一、堆栈空间分配区别: 1、栈(操作系统):由操作系统自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈; 2、堆(操作系统): 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收,分配方式倒是类似于链表。 二、堆栈缓存方式区别: 1原创 2015-11-20 12:59:49 · 2029 阅读 · 0 评论 -
do. while(0)的妙用
文章参考https://www.jianshu.com/p/99efda8dfec9转载 2019-08-25 22:01:12 · 227 阅读 · 0 评论