C++基础知识
不觉
这个作者很懒,什么都没留下…
展开
-
C/C++ Tips(1)
1、关于vector的内部实现 对于vector,任何插入删除的操作都会使迭代器失效,所以要小心 vector内部实现其实就是一块连续的内存,它和传统的array不同的它可以扩容,不用考虑越界。 vector的迭代器就是最简单的指向容器内类型的指针。其内部有三个指针,start(指向数据存储区的首地址),finish(已使用数据区的尾端),e原创 2013-04-07 11:58:41 · 1123 阅读 · 0 评论 -
各种排序的比较
1)插入排序 每次将一个待排序的数据元素,插入到前面已经排好序的数列中的适当位置,使数列依然有序,直到待排序数据元素全部插入完为止//假定a[0...i-1]有序,a[i]为待插入元素void insertSort(int a[],int n){ int i,j,k; for(i=1;i!=n;++i) { //为a[i]在前面的a[0...i-1]有序区间中找一个原创 2013-03-19 11:08:41 · 1850 阅读 · 0 评论 -
关于堆栈
堆栈是一种后进先出的数据结构,当你从堆栈中取出一个元素的时候,你得到的是最后进入堆栈的那个元素。堆栈这种数据结构特别适用于那些由多层子任务构成的任务。堆栈比较常见的用法有1)保存子例程中的返回地址,参数,局部变量。2)用编译器分析语法时保存各种语法元素记号。动态数组与链表的主要区别为其随机存取性,但因为堆栈上的操作永远集中在数据元素的尾部,所以使用动态数组体现不出它的优势。随着元素的增加,原创 2013-03-24 14:52:12 · 750 阅读 · 0 评论 -
C/C++ Tips (2)
1、C++里的钻石结构 class A { }; class B : virtual public A { }; class C : virtual public A { }; class D : public B, public C { };2、long和float都是用四个字节表示3、关键字volatile的作用原创 2013-04-08 11:18:35 · 883 阅读 · 0 评论 -
编程范式学习笔记
#include#include#includevoid swap(void *vp1,void *vp2,int size){ char *buffer=(char *)malloc(size*sizeof(char)); memcpy(buffer,vp1,size); memcpy(vp1,vp2,size); memcpy(vp2,buffer,size);}voi原创 2013-04-10 19:30:00 · 1207 阅读 · 0 评论 -
Practice on programming 学习笔记.
class 2获得命令行参数原创 2014-08-04 22:42:03 · 868 阅读 · 0 评论 -
枚举
基于已有知识进行答案猜测的一种问题求解策略从可能的集合中一一列举各元素根据所知道的知识,给一个猜测的答案枚举算法对问题可能解集合的每一项根据问题给定的检验条件判定哪些是成立的使条件成立的即是问题的解判断猜测的答案是否正确进行新的猜测:有两个关键因素需要注意1、猜测的结果必须是之前没出现过的2、猜测过程要及早排除错误的答案原创 2015-08-09 18:02:02 · 579 阅读 · 0 评论 -
fread 相关
if( fread( pic->plane[0], 1, param->i_width * param->i_height, fyuv ) <= 0 || fread( pic->plane[1], 1, param->i_width * param->i_height / 4, fyuv ) <= 0 || fread( pic->plane[2]原创 2015-05-27 10:18:17 · 660 阅读 · 0 评论 -
_makepath and _splitpath 分析路径
makepath 和 splitpath 都是分析路径的函数 它们将一个完整路径分为 path, drive, dir,fname, ext 五部分void _splitpath( const char *path, char *drive, char *dir, char *fname, char *ext );eg: c:/test/helloworld/make原创 2015-01-05 11:06:01 · 832 阅读 · 0 评论 -
指针地址的修改
char *GetMemory( char *p ) { p=(char *)malloc(100); return p; } 传入GetMemory函数的形参为字符串指针,在函数内部修改不能真正改变传入形参的值 乍看到这句话会感到很奇怪,编程中总是通过传入指针或引用在函数内部对外部变量进行修改计算。 其实是这样的,当你想修改指针所指向的值的时候,那原创 2013-03-10 19:37:22 · 2239 阅读 · 0 评论