C++
文章平均质量分 57
彼得潘的姑娘
这个作者很懒,什么都没留下…
展开
-
C++ -- 内存管理 之 重载new delete
写operator new和operator delete时要遵循常规 自己重写operator new时(条款10解释了为什么有时要重写它),很重要的一点是函数提供的行为要和系统缺省的operator new一致。实际做起来也就是:要有正确的返回值;可用内存不够时要调用出错处理函数(见条款7);处理好0字节内存请求的情况。此外,还要避免不小心隐藏了标准形式的new,不过这是条款9转载 2013-03-29 10:45:14 · 624 阅读 · 0 评论 -
人机交互命令 expect
使用expect批量完成ssh指令并在对端机器执行指定指令原创 2014-06-19 15:53:46 · 1129 阅读 · 0 评论 -
c++ 析构函数 虚函数
注:本文内容来源于zhice163博文,感谢作者的整理。1.为什么基类的析构函数是虚函数? 在实现多态时,当用基类操作派生类,在析构时防止只析构基类而不析构派生类的状况发生。 下面转自网络:源地址 http://blog.sina.com.cn/s/blog_7c773cc50100y9hz.html a.第一段代码 #include转载 2014-05-29 15:58:30 · 549 阅读 · 0 评论 -
SSE 指令笔记(均 转载)
本文面对对SSE等SIMD指令集有一定基础的读者,以单精度浮点数组求和为例演示了如何跨平台使用SSE、AVX指令集。因使用了stdint、zintrin、ccpuid这三个模块,可以完全避免手工编写汇编代码,具有很高可移植性。支持vc、gcc编译器,在Windows、Linux、Mac这三大平台上成功运行。一、问题背景 最初,我们只能使用汇编语言来编写SIMD代码。不仅写起来转载 2014-07-17 09:37:07 · 2317 阅读 · 0 评论 -
C++ explicit 关键字用法
公司里 编程规范 有单参数构造函数 必须增加 explicit的关键字 贴上资料 备忘~/***************************************************************************************************************************************************转载 2014-03-25 14:05:16 · 572 阅读 · 0 评论 -
c++ new 用法 总结
简单来说 分为以下三种一 . new operator (new 表达式) ex:string* ps = new string("abc");上面这个new表达式完成了两件事情:申请内存和初始化对象。二. operator new (new操作符)ex:void* buffer = operator new(sizeof(string));类似于原创 2014-04-03 17:02:02 · 984 阅读 · 0 评论 -
C++内存分配方式详解——堆、栈、自由存储区、全局/静态存储区和常量存储区
栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清除的变量的存储区。里面的变量通常是局部变量、函数参数等。在一个进程中,位于用户虚拟地址空间顶部的是用户栈,编译器用它来实现函数的调用。和堆一样,用户栈在程序执行期间可以动态地扩展和收缩。 堆,就是那些由 new 分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个 new 就要对应一个 delete。如果程序员没转载 2014-02-19 11:27:30 · 501 阅读 · 0 评论 -
mmap 错误
int readlen = 5*1024*1024;//int readlen = 1024;int fd = open("/home/bonc/BC000D0300420131210000001.AVL",O_RDONLY);//int fd = open("/home/bonc/ds.ini",O_RDONLY);int len = lseek(fd,0,SEEK_END);//原创 2013-12-16 15:59:08 · 2679 阅读 · 0 评论 -
升级gcc
严格按照以下命令 轻松升级gcc 只需原始gcc tar包,无需另外下载!~~tar xzf gcc-4.6.1.tar.gzcd gcc-4.6.1./contrib/download_prerequisites //下载 gmp mpfr mpccd ..mkdir objdir //不能在source目录下configure 必须在外面的目录下cd ob原创 2013-11-04 11:54:26 · 5937 阅读 · 0 评论 -
C++ 类存储结构
C++类的存储(部分可用与c的结构体)c++中最重要的就是类,那么给你一个类的对象,你知道它在内存中如何存储的吗?它占内存中多少个字节?首先确定类的构成:1,数据成员:可以是内置类型,类类型。2,函数成员:虚函数,非虚函数1)数据成员内置类型对齐原则内置类型就是常用的:char,short,long,int,float,double.转载 2013-07-30 10:00:12 · 1005 阅读 · 0 评论 -
vs2010--编译问题-解决办法
问题描述:C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\atlmfc\include\afxdb_.h(74): error C2146: syntax error : missing ';' before identifier 'm_dwDataLength'C:\Program Files (x86)\Microsoft原创 2013-06-06 09:42:59 · 891 阅读 · 0 评论 -
最快速度找到内存泄漏
确认是否存在内存泄漏我们知道,MFC程序如果检测到存在内存泄漏,退出程序的时候会在调试窗口提醒内存泄漏。例如:class CMyApp : public CWinApp{public: BOOL InitApplication() { int* leak = new int[10]; return TRUE; }}转载 2013-04-07 19:15:52 · 443 阅读 · 0 评论 -
C++中两个类互相引用的解决方法
一、问题描述现在有两个类A和B需要定义,定义A的时候需要用到B,定义B的时候需要用到A。二、分析A和B的定义和调用都放在一个文件中肯定是不可以的,这样就会造成两个循环调用的死循环。根本原因是:定义A的时候,A的里面有B,所以就需要去查看B的占空间大小,但是查看的时候又发现需要知道A的占空间大小,造成死循环。解决方法:(1)写两个头文件A.转载 2017-11-29 13:17:38 · 3342 阅读 · 1 评论