c++
jiang江江
IT从业者
展开
-
通过形参获得函数返回值的问题
我们经常会用到将一个参数在函数外部初始化,然后传入函数,函数给参数赋值后,我们在函数外部使用这个值,最开始学习c++的时候我们就知道这需要将参数以引用的方式传入,却没有更深层次的考虑这个方法的原因,为什么传指针就不行呢?其实这个问题更深层次的原因是形参也是一个变量,我们在将一个初始化好的参数传入函数时其实是将参数赋给形参,比如void copy1(char*data1){ char* valu原创 2017-03-24 11:30:08 · 3120 阅读 · 0 评论 -
C/C++中的几种类型的指针简析
现在流行的是32位和64位的CPU,对于指针来说不存在几种类型了,这里说的指针类型是指16位CPU中的near和far指针。INTEL的8086CPU中采用20位地址总线,寻址范围为1MB内存,它的数据总线,为16位,可以寻找的地址为64kb,这就需要给内存分段,每段为64kb。near指针就是只能在每段内寻址的指针,它是一个16位的指针,2^16=64kb,寻址范围为一个段内。far指针则是原创 2017-06-02 15:59:52 · 444 阅读 · 0 评论 -
2017/6/15技术总结(little_tiff_processor)
1.在编译成Release放在客户机上运行时,如果没有将链接改为静态链接,会出现缺少vs类库的问题,奇怪,以前做的工具为什么没有出现这种问题,这里只需要修改vs中的配置就可以了,在代码生成->运行库->多线程(/MT),这样就将vs基础类库的链接方式改为了静态链接,不需要基础类库的dll了,但是如果是MFC中,还需要将修改常规->MFC的使用->在静态库中使用MFC。 2.在使用bd原创 2017-06-15 11:24:54 · 308 阅读 · 0 评论 -
指向指针的指针的用途
在阅读apache的源码时,发现一处使用指针的指针的案例,平时没有够多考虑指向指针的指针这个问题,今天顺便理解了一下,这里沾上apache的源码,这时apr一个很经常用的函数,就是根据字符串的中断值来获取中断值隔开的字符串,比如“T=0&L=1&X=2&Y=3”,这个函数可以通过‘&’来获取T L X Y的值,它会将开始的字符串地址输入str,中断值输入为sep,last是中断值后面字符串开始的地原创 2017-07-19 12:08:06 · 3473 阅读 · 0 评论 -
zlib压缩库解压失败的问题
使用zlib解压缩的时候,偶尔会出现这种情况,解压缩没有成功,返回值为-3,即Z_DATA_ERROR,但是实际上有正常的值被解压出来,今天仔细研究了一下这个问题,找到zlib压缩库的源码,发现有一句提到 返回Z_DATA_ERROR的原因是数据错误或者数据不完整 因为有很多数据解压是成功的,因此,数据不完整的可能性比较大,我在压缩时,解压完之后数据的大小这个参数s原创 2017-08-30 23:38:50 · 4478 阅读 · 0 评论 -
智能指针使用中的几个问题
智能指针能不能传出去和智能指针能不能传进来智能指针对于C++使用者来说,应该是非常友好了,C++的指针特性使得C++可以非常方便的操作内存,但是如果不能很好的使用,他也会给使用者带来一些困扰,比如C++维护的指针能不能传出去呢?我们有时候需要将一个智能指针维护的指针传出去,有时是因为接口无法改变,有时候是因为需要赋值给普通指针,这时候可以想一下,如果指针传出去了,那么谁来维护传出去的指针呢,万...原创 2018-04-16 20:46:31 · 535 阅读 · 0 评论 -
Boost中的线程同步
写在前面:最近入职了新的公司,人生已经翻开了另外一页,对于我而言,目前工作上还没有出现太大的挑战,我总是这样,自鸣得意。换了平台对于windows下的程序员来说,转换到linux是一件很 en。。。。蛋疼的事情。 刚入职工作自然是熟悉代码了,其实,我的C++功底还是不错的,我的最主要问题是看的代码少,协的代码少,但我知道的多呀,所以对于有些技术查一下就会用,我又开始了。 最近我发现了公...原创 2018-04-11 22:18:51 · 787 阅读 · 0 评论 -
STL的区间问题
STL的区间问题我们在给STL赋值时,有时会使用区间进行赋值,如下::std::vector vec1({1,2,3,4,5,6});::std::vector vec2(vec1.begin(),vec1.begin()+3);一定要注意这里在构造vec2时是一个前合后开的区间[ vec1.begin(),vec1.begin()+3 )。最后的一个元素是取不到的。...原创 2018-05-03 21:27:46 · 230 阅读 · 0 评论 -
几个C++需要注意的小地方
1、引用在声明时必须要定义; 2、auto不能自动推导引用,需要显式声明原创 2018-05-23 23:15:16 · 439 阅读 · 0 评论