- 博客(16)
- 收藏
- 关注
转载 linux 编程----内存泄露检测之mtrace
几种常用的内存检测工具mtrace是一个C函數,在<mcheck.h>里声明及定义,函数原型为: void mtrace(void);其实mtrace是类似malloc_hook的 malloc handler,只不过mtrace的handler function已由系统为你写好,但既然如此,系统又怎么知道你想将malloc/free的记录写在哪里呢?为此,调用mtrace...
2018-07-18 17:30:06 514
转载 C++中的static
1、静态数据成员 在类内数据成员的声明前加上关键字static,该数据成员就是类内的静态数据成员。先举一个静态数据成员的例子。 //Example 5 #include <iostream.h> class Myclass { public: Myclass(int a,int b,int c); void GetSum(); private: int a,b,c;...
2018-05-17 15:06:46 221
转载 C++中const的运用及注意
在我学习C++的过程中,对const的应用不可不说是最容易混乱和最容易出错的。但是const却是一个好东西,每一个C++程序员都必须掌握它。以下为本人的一点总结。 1、用const 修饰函数的参数 如果参数作输出用,不论它是什么数据类型,也不论它采用“指针传递”还是“引用传递”,都不能加const 修饰,否则该参数将失去输出功能。const 只能修饰输入参数。a, 如果输入参数采用“值传递”,由...
2018-05-17 13:40:36 281
转载 C++简单实现几种常用的设计模式
本文介绍几种常用的设计模式并给出C++实现。1.单例模式作用:保证一个类只有一个实例,并提供一个访问它的全局访问点,使得系统中只有唯一的一个对象实例。应用:常用于管理资源,如日志、线程池实现要点:在类中,要构造一个实例,就必须调用类的构造函数,并且为了保证全局只有一个实例,需防止在外部调用类的构造函数而构造实例,需要将构造函数的访问权限标记为private,同时阻止拷贝创建对象时赋值时拷贝对象,因...
2018-05-17 11:27:39 1703
转载 C/C++重难点总结系列(二)
11.关于const 指针(1)常量指针(指向常量的指针:底层const) 如:[cpp] view plain copyconst int *pi=&a; 此处const限制的是指针pi解引用操作,即*pi不能修改,但pi自身可以修改。同时,const对*p的限定不会影响到所指向的值的变更。如果指向的a不是const int a,则直接对a修改仍然是可以的,只是不能通过解引用来...
2018-05-17 11:05:34 285 1
转载 C/C++重难点总结系列(一)
前言该系列是本人学习C/C++以来,阅读相关书籍以及编程实践中记载的笔记中提炼的知识点,现整理成博文与大家分享。本系列不是小白系列,尽量避免冗杂的解释和叙述,简明扼要地总结干货,适合进阶的童鞋。限水平有限,有任何问题欢迎大家指正和讨论。----------------------------------------------------------------------------------...
2018-05-17 10:39:51 343
转载 C++出错提示英汉对照表
Ambiguous operators need parentheses -----------不明确的运算需要用括号括起 Ambiguous symbol ''xxx'' ----------------不明确的符号 Argument list syntax error ----------------参数表语法错误 Array bounds missing ------------------...
2018-05-17 10:04:39 405
转载 C++中内存泄漏的几种情况(转)
1. 在类的构造函数和析构函数中没有匹配的调用new和delete函数两种情况下会出现这种内存泄露:一是在堆里创建了对象占用了内存,但是没有显示地释放对象占用的内存;二是在类的构造函数中动态的分配了内存,但是在析构函数中没有释放内存或者没有正确的释放内存2. 没有正确地清除嵌套的对象指针3. 在释放对象数组时在delete中没有使用方括号方括号是告诉编译器这个指针指向的是一个对象数组,同时也告诉编...
2018-05-17 10:02:26 364
转载 C++虚函数表剖析
版权声明:本文为博主原创文章,转载请注明出处: leehao.me 或 http://blog.csdn.net/lihao21/article/details/50688337关键词:虚函数,虚表,虚表指针,动态绑定,多态一、概述为了实现C++的多态,C++使用了一种动态绑定的技术。这个技术的核心是虚函数表(下文简称虚表)。本文介绍虚函数表是如何实现动态绑定的。二、类的虚表每个包含了虚函数的类都...
2018-03-15 17:41:09 291 1
原创 linux 下 string 中文乱码问题解决
以下是实现#include <iconv.h>extern std::vector<std::string> vecImageId;int code_convert(char *from_charset, char *to_charset, char *inbuf, size_t inlen, char *outbuf, size_t outlen) { iconv_t c...
2018-03-13 13:25:31 2547
原创 关于项目中的一记录和心得
1.全局变量和全局函数的使用: 当一个项目中两个文件A.cpp,B.cpp之间没有存在必然的联系,A.cpp中需要获取B.cpp中定义的一些数据内容,可以通过使用全局变量来实现这个功能。比如在项目车辆二次识别中,在输入解析时需要获取批量输入时的图片的Id(std::string),然后将其放入容器vector中,在B.cpp中需要获取图片Id,并加以整合输出组装json,但是B.cpp和A....
2018-03-13 13:04:18 189
转载 BMP格式详解
BMP格式详解BMP文件格式详解(BMP file format)BMP文件格式,又称为Bitmap(位图)或是DIB(Device-Independent Device,设备无关位图),是Windows系统中广泛使用的图像文件格式。由于它可以不作任何变换地保存图像像素域的数据,因此成为我们取得RAW数据的重要来源。Windows的图形用户界面(graphical user interfaces)...
2018-03-01 16:29:33 523 1
转载 Linux系统C/C++编程基础
版权声明:本文为博主原创文章,未经博主允许不得转载。 http://blog.csdn.net/jesse_mx/article/details/77750041目录(?)[+]最近在复习Linux系统的一些知识,Linux系统下C/C++编程最基本的就是这三部分:GCC,GDB和Makefile。这个笔记做的很简略,只是为了帮助自己回忆最基本的知识点,想要深入了解还需要看更多的文档。GCCGCC...
2018-02-26 14:15:40 736
转载 高质量c/c++编程
第7章 内存管理 欢迎进入内存这片雷区。伟大的Bill Gates 曾经失言: 640K ought to be enough for everybody — Bill Gates 1981 程序员们经常编写内存管理程序,往往提心吊胆。如果不想触雷,唯一的解决办法就是发现所有潜伏的地雷并且排除它们,躲是躲不了的。本章的内容比一般教科书的要深入得多,读者需细心阅读,做到真正地通晓内存管理。 7.1内...
2018-02-26 13:21:18 1680
转载 C语言程序的存储区域
重点关注以下内容: C语言程序在内存中各个段的组成 C语言程序连接过程中的特性和常见错误 C语言程序的运行方式一:C语言程序的存储区域 由C语言代码(文本文件)形成可执行程序(二进制文件),需要经过编译-汇编-连接三个阶段。编译过程把C语言文本文件生成汇编程序,汇编过程把汇编程序形成二进制机器代码,连接过程则将各个源文件生成的二进制机器代码文件组合成一个文件。 C语言编写的程序经过...
2018-02-26 10:58:41 853
转载 c++ 多线程
1. 引言 线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者。传统的Unix也支持线程的概念,但是在一个进程(process)中只允许有一个线程,这样多线程就意味着多进程。现在,多线程技术已经被许多操作系统所支持,包括Windows/NT,当然,也包括Linux。 为什么有了进程的概念后,还要再引入线程呢?使用多线...
2018-02-26 09:12:07 194
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人