自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 析构函数与delete的思考

1、析构函数一般用来对类类型的对象进行销毁,值得注意的是,析构函数只会自动释放类中栈区的空间,不会释放由new分配的堆空间 。如果在类中有用new分配堆空间,在调用默认的析构函数来释放类对象时会产生内存泄漏,因为A* a=new A();中a是在栈空间的,被析构了,但是new出来的对象没有被释放掉,这块内存失去了控制产生内存泄漏。为了解决这一问题,一般需要自定义析构函数,然后显式使用delete运算

2016-05-25 22:41:34 1234

转载 如何让类对象只在栈(堆)上分配空间?

一般情况下,编写一个类,是可以在栈或者堆分配空间。但有些时候,你想编写一个只能在栈或者只能在堆上面分配空间的类。这能不能实现呢?仔细想想,其实也是可以滴。在C++中,类的对象建立分为两种,一种是静态建立,如A a;另一种是动态建立,如A* ptr=new A;这两种方式是有区别的。1、静态建立类对象:是由编译器为对象在栈空间中分配内存,是通过直接移动栈顶指针,挪出适当的空间,然后(编译器)在这片内存

2016-05-25 11:23:29 3493

原创 结构体中内存对齐问题

首先,在内存分配上,如果是单独的一个数据类型,对齐方式如下: 常用类型的对齐方式类型 对齐方式(变量存放的起始地址相对于结构的起始地址的偏移量) char 偏移量必须为sizeof(char)即1的倍数 int 偏移量必须为sizeof(int)即4的倍数 double 偏移量必须为sizeof(double)即8的倍数 short 偏移量必须为sizeof(

2016-05-24 22:43:19 927

转载 C++ operator关键字(重载操作符)

【转】http://blog.sina.com.cn/s/blog_4b3c1f950100kker.htmloperator是C++的关键字,它和运算符一起使用,表示一个运算符函数,理解时应将operator=整体上视为一个函数名。 这是C++扩展运算符功能的方法,虽然样子古怪,但也可以理解:一方面要使运算符的使用方法与其原来一致,另一方面扩展其功能只能通过函数的方式(c++中,“功能”都

2016-05-24 21:33:11 3331

原创 【opencv学习】之split函数提取多通道图像的单通道图像

首先解释下什么是多通道图像,一个普通的彩色图像的每个像素点是由RGB三种颜色构成的,那么这种图像就是3通道图像,其中单独的R色、G色和B色都分别称为一个单通道图像。opencv中的Mat类型实际上可以理解为一种多维多通道的矩阵,如果一个普通的彩色图像读进来后赋值给一个Mat类型的对象M,那么这个M就是一个二维数组,这个二维数组中的每个元素都是一个含有三个RGB值得数据,那这个M就是一个二维三通道的矩

2016-04-26 20:43:56 13795 1

原创 main.obj:-1: error: LNK2019: 无法解析的外部符号 "public: __thiscall CFindFileForm::CFindFileForm(class QWidge

qt5中运行时出现这个问题,起因是自己新建了一个类在.h文件中,在main.cpp中include了,链接时候出了问题,解决办法,删掉debug和release文件夹,删掉makefile,重新编译。

2015-12-03 23:06:09 5750 5

原创 Python打开文件时的几种模式比较

r 以只读模式打开文件 w 以只写模式打开文件,且先把文件内容清空 a 以添加模式打开文件,写文件的时候总是写到文件末尾,用seek也无用。打开的文件也是不能读的 r+ 以读写方式打开文件,文件可读可写,可写到文件的任何位置 w+ 以读写方式打开文件,文件可读可写,可写到文件的任何位置,它会先把文件内容清空 a+ 以读写方式打开文件,文件可读可写,它只能写到文件末尾

2015-09-07 22:42:31 983

原创 1001. A+B Format (20)

Calculate a + b and output the sum in standard format – that is, the digits must be separated into groups of three by commas (unless there are less than four digits).InputEach input file contains one t

2015-09-01 23:25:19 380

原创 1002. A+B for Polynomials (25)

This time, you are supposed to find A+B where A and B are two polynomials.InputEach input file contains one test case. Each case occupies 2 lines, and each line contains the information of a polynomial

2015-09-01 23:18:28 449

原创 python入门之数据类型

字符串、元组、列表都是序列,但是他们之间有相同点也有不同点字符串:用单引号‘、双引号“和三个双引号”“”来表示,内容不可改变,元素有序可以索引和切片操作。元组:用()表示,内容不可以改变,元素有序可以索引和切片操作列表:用[ ]表示,内容可以改变,元素有序可以索引和切片操作字典:用{ }表示,key/value形式存储,value是可变的,但是key不可变,字典是无序的(哈希表),

2015-08-01 20:39:29 378

转载 欢迎使用CSDN-markdown编辑器

malloc()函数 1.1 malloc的全称是memory allocation,中文叫动态内存分配。原型:extern void *malloc(unsigned int num_bytes); 说明:分配长度为num_bytes字节的内存块。如果分配成功则返回指向被分配内存的指针,分配失败返回空指针NULL。当内存不再使用时,应使用free()函数将内存块释放。1.2 void *m

2015-06-02 20:09:34 394

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除