float 浮点数与零值0比较大小 ZZ
摘要:float x; 千万不要写x==0; 写出float x 与“零值”比较的if语句——一道面试题分析 写出float x 与“零值”比较的if语句 请写出 float x 与“零值”比较的 if 语句: const float EPSINON = 0.00001; if ((x >= - EPSI
阅读全文
posted @
2019-03-30 07:16
莫水千流
阅读(4998)
推荐(1) 编辑
double compare 0
摘要:因为double类型或float类型都是有精度的,其实都是取的近似值,所以有个误差。和一个很小的数比如0.00000001(1e-8)比较就是为了在这个误差范围内进行比较。 举个例子如double b = 0.123456可能是0.1234561的四舍五入后得到的结果。最后的0.0000001就表示
阅读全文
posted @
2019-03-30 07:09
莫水千流
阅读(977)
推荐(0) 编辑
const的用法,特别是用在函数前面与后面的区别!
摘要:const的用法,特别是用在函数后面 在普通的非 const成员函数中,this的类型是一个指向类类型的 const指针。可以改变this所指向的值,但不能改变 this所保存的地址。 在 const成员函数中,this的类型是一个指向 const类类型对象的 const指针。既不能改变 this所
阅读全文
posted @
2019-03-13 22:11
莫水千流
阅读(3462)
推荐(0) 编辑
C++内存机制中内存溢出、内存泄露、内存越界和栈溢出的区别和联系
摘要:当我们在用C++做底层驱动的时候,经常会遇到内存不足的警告,究其原因,往往是因为内存出现溢出,泄露或者越界等原因。那么他们之间有什么联系吗? 内存溢出(out of memory)是指程序在申请内存时,没有足够的内存空间供其使用。 内存泄漏(memory leak)是指程序在申请内存后,无法释放已申
阅读全文
posted @
2019-03-12 23:31
莫水千流
阅读(4333)
推荐(1) 编辑
深入理解C++内存管理机制
摘要:关于C++的内存处理,可分为三大块,分别是: (一)内存管理机制 (二)内存泄露处理 (三)内存回收机制 这篇文章将就(一)内存管理机制 进行深入探讨,如有错误欢迎大家指正。 C++的内存管理也可细分为 1. 程序内存布局 2. 内存的分配方式 3. 常见内存错误及对策 一. 程序内存布局 查了相关
阅读全文
posted @
2019-03-12 23:30
莫水千流
阅读(1697)
推荐(0) 编辑
c/c++内存机制(一)(转)
摘要:一:C语言中的内存机制 在C语言中,内存主要分为如下5个存储区: (1)栈(Stack):位于函数内的局部变量(包括函数实参),由编译器负责分配释放,函数结束,栈变量失效。 (2)堆(Heap):由程序员用malloc/calloc/realloc分配,free释放。如果程序员忘记free了,则会造
阅读全文
posted @
2019-03-12 23:13
莫水千流
阅读(1351)
推荐(0) 编辑
与临时对象的斗争(上)ZZ
摘要:C++ 是一门以效率见长的语言(虽然近来越来越多的人“不齿”谈及效率,我深以为不然,在某一次的程序编写中不对效率锱铢必较并不意味意味着我们就不应该追求更多的更好的做法)。总之吧,相比起其它语言,程序员们在使 C++ 的时候会更加有意识地去避免没有效率的做法。在C++ 的程序中,临时对象的产生就是损及
阅读全文
posted @
2019-03-10 18:43
莫水千流
阅读(280)
推荐(0) 编辑
与临时对象的斗争(下)
摘要:Expression Template(表达式模板,ET) 如果有“系统地”学习过 C++ 的模板编程,那么你应该已经知道 Expression Template 这个“东西”。在模板圣经《C++ templates》的第 18 章专门用了一整章来讲这个技巧,(是的,我认为它是一种技巧)。足以见得它
阅读全文
posted @
2019-03-10 18:43
莫水千流
阅读(280)
推荐(0) 编辑