随笔分类 -  C/C++

基础知识积累
摘要:开始学习C++ 以下是摘记: C++区分大小写 C++的分号是语句的终止符,不能省略 函数头描述了函数与调用它的函数之间的接口,返回值是将处理后的信息返回给调用该接口的函数,参数列表描述了从调用函数传递给被调函数的信息 通常main函数是被启动代码调用,是程序和操作系统之间的桥梁 如果main函数没 阅读全文
posted @ 2018-01-23 23:30 whlook 阅读(139) 评论(0) 推荐(0) 编辑
摘要:预备知识 第一章是预备知识,并且包含一些背景介绍,大概如下: 1.C++与C有什么不同呢?,C++其实是C的继承和发展,它融合了三种编程方式:面向过程,面向对象,泛型编程。 2.C++和C一样是在贝尔实验室诞生的,由Bjarne Stroustrup 开发实现,目的是更方便地编出好程序,让每个程序员 阅读全文
posted @ 2018-01-23 00:16 whlook 阅读(183) 评论(0) 推荐(0) 编辑
摘要:1. VOC的格式 VOC主要有三个重要的文件夹: Annotations 、 ImageSets 和 JPEGImages JPEGImages 文件夹 该文件夹下存放着所有的训练集图片,格式都是 需要注意的是命名格式,虽然对命名没有特别要求,但是最好按照官方的命名方法,如 ,`000123.jp 阅读全文
posted @ 2017-07-21 23:56 whlook 阅读(18191) 评论(9) 推荐(0) 编辑
摘要:1.基本概念 后缀表示法也叫逆波兰表示法(前缀就是波兰表示法),由于所有的操作符都在操作数的后面,所以被称为后缀表示法。 中缀表示法的操作符在操作数之间,也是最符合人的逻辑。前缀表示法的操作符在操作数之前,它和后缀表示法一样,都是为了方便计算机计算,因为在后缀或前缀中没有括号,也不存在优先级处理的问 阅读全文
posted @ 2017-07-09 21:53 whlook 阅读(8590) 评论(1) 推荐(0) 编辑
摘要:1. 简介 TinyXML2(最新版本)是一个开源的功能齐全的XML解析库 For C++,源码见: "github" 。 2. 开始使用 首先从Github上获得源码,是一个完整的演示工程,我们只需要其中的 和`tinyxml2.h .lib`然后链接到工程中。 然后包含头文件 ,并使用命名空间: 阅读全文
posted @ 2017-07-04 16:37 whlook 阅读(4548) 评论(0) 推荐(0) 编辑
摘要:1.获得指定目录下的所有文件(不搜索子文件夹) 需要包含的头文件 函数实现 2.获取指定目录下的所有文件(搜索子文件夹) 3.获取指定格式的文件(不搜索子文件夹) 4.测试 int main(int argc, char argv) { vector temp; getAllFiles("J:\\f 阅读全文
posted @ 2017-06-12 16:22 whlook 阅读(8577) 评论(0) 推荐(3) 编辑
摘要:1.基本概念 dll(dynamic-link library),动态链接库,是微软实现共享函数库的一种方式。动态链接,就是把一些常用的函数代码制作成dll文件,当某个程序调用到dll中的某个函数的时候,windows系统才把dll加载到内存中。也就是说当程序需要的时候才链接dll,所以是动态链接。 阅读全文
posted @ 2017-04-12 22:11 whlook 阅读(3363) 评论(0) 推荐(1) 编辑
摘要:代码 阅读全文
posted @ 2017-04-09 23:02 whlook 阅读(215) 评论(0) 推荐(0) 编辑
摘要:1.基本概念 哈希一般用来快速查找,通过hash函数将输入的键值(key)映射到某一个地址,然后就可以获得该地址的内容。 同样,如果要储存一对值(键值和数据),则也是通过hash函数获得地址来存入。见图例: 不过这其中会出现一些问题,最常见的是出现冲突。就是输入不同的key,经过hash之后得到同样 阅读全文
posted @ 2017-04-06 23:46 whlook 阅读(7898) 评论(0) 推荐(0) 编辑
摘要:1.创建一个线程 创建线程比较简单,使用std的thread实例化一个线程对象就创建完成了,示例: 不过这个示例是有问题的,因为在创建了线程后线程开始执行,但是主线程main()并没有停止脚步,仍然继续执行然后退出,此时线程对象还是joinable的,线程仍然存在但指向它的线程对象已经销毁,所以会抛 阅读全文
posted @ 2017-03-18 13:55 whlook 阅读(87910) 评论(3) 推荐(7) 编辑
摘要:1.基本概念 栈中的元素遵守“先进后出”的原则(LIFO,Last In First Out) 只能在栈顶进行插入和删除操作 压栈(或推入、进栈)即push,将数据放入栈顶并将栈顶指针加一 出栈(或弹出)即pop,将数据从栈顶删除并将栈顶指针减一 栈的基本操作有:pop,push,判断空,获取栈顶元 阅读全文
posted @ 2017-03-10 17:29 whlook 阅读(15960) 评论(0) 推荐(1) 编辑
摘要:程序一般是从main函数开始执行的,main函数标准格式: 其中argc是来自shell(或CMD)的参数的个数,argv是char型的二维数组,储存着命令的内容。 通过一下一个小程序可以认识一下: 运行结果: 还可以将命令参数作为子函数的执行参数,例如: 运行结果: 阅读全文
posted @ 2017-03-10 13:21 whlook 阅读(371) 评论(0) 推荐(0) 编辑
摘要:1.格式 2.示例 阅读全文
posted @ 2017-03-06 16:22 whlook 阅读(234) 评论(0) 推荐(0) 编辑
摘要:1.基本概念 类是具有相同属性和行为的对象的抽象集合,是对象的模板,对象是类的实例化。 类包含成员函数(行为)和数据(属性)两个部分,一般成员函数作为接口,而数据作为某些成员函数的操作对象,通常是对外不可见的(私有的)。 类通过对数据的封装、隐藏,增强了安全性并简化了编程,模块化程度相对应C来说更高 阅读全文
posted @ 2017-03-06 13:00 whlook 阅读(222) 评论(0) 推荐(0) 编辑
摘要:1.使用vs2013创建普通的应用台控制程序 2.在属性里选择静态库(.lib) 编写库文件: 3.编译,成功后会在目录下生成.lib文件 4.使用示例: 或者不想每次都要链接库文件,就把环境配置好: 01.打开属性 02.添加头文件目录、库文件目录等: Done!然后就不用这句了: 阅读全文
posted @ 2017-03-04 17:43 whlook 阅读(657) 评论(0) 推荐(0) 编辑
摘要:1. override 重载 当你在父类中使用了虚函数时候,你可能需要在某个子类中对这个虚函数进行重写,以下方法都可以: 如果不使用override,当你手一抖,将foo()写成了f00()会怎么样呢?结果是编译器并不会报错,因为它并不知道你的目的是重写虚函数,而是把它当成了新的函数。如果这个虚函数 阅读全文
posted @ 2017-03-04 17:11 whlook 阅读(7148) 评论(1) 推荐(4) 编辑
摘要:1.使用CreatThread创建 使用CreatThread创建线程是不安全的,容易造成内存泄漏(CRT相关),所以推荐使用_beginThread或_beginThreadex,它内部也使用了CreatThread,但是在使用前做了很多工作以确保其安全性。 2.使用_beginThread创建 阅读全文
posted @ 2017-03-01 20:11 whlook 阅读(982) 评论(0) 推荐(0) 编辑
摘要:使用SystemParametersInfoA接口来更换windows的壁纸,虽然挺好用,但是我想写一个显示GIF壁纸的程序,想法是将GIF的每一个帧连续切换显示,奈何该接口设置壁纸的时间太长,达不到快速切换的效果。 该接口的用法: 阅读全文
posted @ 2017-03-01 20:00 whlook 阅读(3439) 评论(0) 推荐(0) 编辑
摘要:1.基本概念 C++中的虚函数主要是为了实现多态,就是可以通过父类的指针指向子类的实例并调用子类的成员函数。虚函数有虚函数和纯虚函数,其中纯虚函数是必须在子类中实现的,否则无法实例化该子类。 纯虚函数的格式: 虚函数的实现是通过虚函数表(vfptr),每个父类都有一个虚函数表,父类在每个子类的实例中 阅读全文
posted @ 2017-03-01 09:15 whlook 阅读(352) 评论(0) 推荐(0) 编辑
摘要:一. 在c中分为这几个存储区1.栈 - 由编译器自动分配释放2.堆 - 一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收3.全局区(静态区),全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。- 程序结 阅读全文
posted @ 2017-02-28 19:37 whlook 阅读(240) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示