随笔分类 -  C++(转载)

摘要:C++中模板使用详解 转自:http://www.360doc.com/content/09/0403/17/799_3011262.shtml 1. 模板的概念。 我们已经学过重载(Overloading),对重载函数而言,C++的检查机制能通过函数参数的不同及所属类的不同。正确的调用重载函数。例 阅读全文
posted @ 2017-11-09 21:41 菜鸡一枚 阅读(303) 评论(0) 推荐(0) 编辑
摘要:C++中句柄 一、句柄的概念 1.windows方面理解: 句柄,是整个windows编程的基础。 一个句柄是指使用的一个唯一的整数值,即一个四字节长的数值,来标志应用程序中的不同对象和同类对象中的不同的实例,诸如,一个窗口,按钮,图标,滚动条,输出设备,控件或者文件等。 应用程序能够通过句柄访问相 阅读全文
posted @ 2017-08-20 16:33 菜鸡一枚 阅读(11672) 评论(0) 推荐(0) 编辑
摘要:大端模式和小端模式转化 在工作中遇到一个问题,数据是以大端模式存储的,而机器是小端模式,必须进行转换,否则使用时会出问题。 一、定义: 大端模式(Big Endian):数据的高字节,保存在内存的低地址中;数据的低字节,保存在内存的高地址中。 小端模式(Little Endian):数据的高字节,保 阅读全文
posted @ 2017-08-19 22:40 菜鸡一枚 阅读(2315) 评论(0) 推荐(0) 编辑
摘要:关于vector的resize()的理解 vector的resize(),reserve()把我搞的晕头转向,老是记不住。现在把自己的一点理解记录在这里。 先看看http://www.cplusplus.com/reference/vector/vector/resize/ std::vector: 阅读全文
posted @ 2017-08-08 10:35 菜鸡一枚 阅读(5086) 评论(0) 推荐(0) 编辑
摘要:虚函数和纯虚函数的区别 版权声明:本文为博主原创文章,未经博主允许不得转载。 版权声明:本文为博主原创文章,未经博主允许不得转载。 首先:强调一个概念定义一个函数为虚函数,不代表函数为不被实现的函数。定义他为虚函数是为了允许用基类的指针来调用子类的这个函数。定义一个函数为纯虚函数,才代表函数没有被实 阅读全文
posted @ 2017-07-06 22:07 菜鸡一枚 阅读(255) 评论(0) 推荐(0) 编辑
摘要:char *a 与char a[] 的区别和char** argv与char *argv[]区别 char *a 与char a[] 的区别 char *a = "hello" 中的a是指向第一个字符‘a'的一个指针 char a[20] = "hello" 中数组名a也是执行数组第一个字符‘h’的 阅读全文
posted @ 2017-07-04 16:07 菜鸡一枚 阅读(1139) 评论(0) 推荐(0) 编辑
摘要:C++ explicit关键字详解 首先, C++中的explicit关键字只能用于修饰只有一个参数的类构造函数, 它的作用是表明该构造函数是显示的, 而非隐式的, 跟它相对应的另一个关键字是implicit, 意思是隐藏的,类构造函数默认情况下即声明为implicit(隐式). 那么显示声明的构造 阅读全文
posted @ 2017-06-24 21:02 菜鸡一枚 阅读(186) 评论(0) 推荐(0) 编辑
摘要:C++static静态成员函数 静态成员函数 静态成员函数和静态数据成员一样,它们都属于类的静态成员,它们都不是对象成员。因此,对静态成员的引用不需要用对象名。 在静态成员函数的实现中不能直接引用类中说明的非静态成员,可以引用类中说明的静态成员。如果静态成员函数中要引用非静态成员时,可通过对象来引用 阅读全文
posted @ 2017-06-06 22:21 菜鸡一枚 阅读(164) 评论(0) 推荐(1) 编辑
摘要:C++中的static关键字的总结 C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。 1.面向过程设计中的static1.1静态全局变量在全局变量前,加上关键字static, 阅读全文
posted @ 2017-06-06 22:11 菜鸡一枚 阅读(144) 评论(0) 推荐(0) 编辑
摘要:C++ >中include <iostream>和include <iostream.h>的区别 简单来说: .h的是标准C的头文件,没有.h的是标准C++的头文件,两种都是头文件。 造成这两种形式不同的原因,是C++的发展历史决定的,刚才正好有别的人也问这个问题,这里我再回答一下(注意vs2008 阅读全文
posted @ 2017-06-06 21:54 菜鸡一枚 阅读(671) 评论(0) 推荐(0) 编辑
摘要:让C++控制台程序停下来,实现暂停功能 一、针对Microsoft #include <stdlib.h> (1)第一种方式system( "PAUSE "); (2)第二种方式getchar(); // 这招对QT程序也有用 (3)第三种方式Sleep(); 二、针对Linux(1)第一种方式 g 阅读全文
posted @ 2017-06-06 21:52 菜鸡一枚 阅读(1613) 评论(0) 推荐(0) 编辑
摘要:转一篇shared_ptr的小文 原文地址: http://euyuil.com/2344/ 在最近的期中项目“牛奶”里,我大量运用了共享指针。虽然这是一种偷懒的表现,但是对于这个“模拟牛奶生产过程”的项目来说,我们并不在乎它对效率产生的影响。 题外话说完后,说说共享指针。共享指针 (shared_ 阅读全文
posted @ 2017-06-05 10:45 菜鸡一枚 阅读(555) 评论(0) 推荐(0) 编辑
摘要:shared_ptr shared_ptr是一个最像指针的"智能指针",是boost.smart_ptr库中最有价值、最重要的组成部分,也是最有用的,Boost库的许多组件--甚至还包括其他一些领域的智能指针都使用了shared_ptr。抱歉,我实在想不出什么更恰当的词汇来形容它在软件开发中的重要性 阅读全文
posted @ 2017-06-05 10:35 菜鸡一枚 阅读(373) 评论(0) 推荐(0) 编辑
摘要:1. 简单工厂模式( Simple Factory Pattern ) 目录 简单工厂模式( Simple Factory Pattern ) 模式动机 模式定义 模式结构 时序图 代码分析 模式分析 实例 简单工厂模式的优点 简单工厂模式的缺点 适用环境 模式应用 总结 目录 简单工厂模式( Si 阅读全文
posted @ 2017-05-30 11:00 菜鸡一枚 阅读(239) 评论(0) 推荐(0) 编辑
摘要:创建型模式 创建型模式(Creational Pattern)对类的实例化过程进行了抽象,能够将软件模块中对象的创建和对象的使用分离。为了使软件的结构更加清晰,外界对于这些对象只需要知道它们共同的接口,而不清楚其具体的实现细节,使整个系统的设计更加符合单一职责原则。 创建型模式在创建什么(What) 阅读全文
posted @ 2017-05-25 20:47 菜鸡一枚 阅读(167) 评论(0) 推荐(0) 编辑
摘要:C++ map [cpp] view plain copy [cpp] view plain copy 1,map的初始化 [cpp] view plain copy map<char,int> map1; //空map map<char,int> map2(map1.begin(),map2.en 阅读全文
posted @ 2017-05-03 10:53 菜鸡一枚 阅读(345) 评论(0) 推荐(0) 编辑
摘要:C++中rand()函数的用法 一、C++中不能使用random()函数 random函数不是ANSI C标准,不能在gcc,vc等编译器下编译通过。但在C语言中int random(num)可以这样使用,它返回的是0至num-1的一个随机数。 可改用C++下的rand函数来实现。 1、C++标准函 阅读全文
posted @ 2017-04-20 19:45 菜鸡一枚 阅读(12453) 评论(0) 推荐(0) 编辑
摘要:泛型编程:源起、实现与意义 泛型编程:源起、实现与意义 By 刘未鹏 C++的罗浮宫(http://blog.csdn.net/pongba) (去年12月《程序员》的约稿) (以前也写过一篇相关的文章:Generic Programming - What Are You, anyway? ) 为什 阅读全文
posted @ 2017-04-17 11:05 菜鸡一枚 阅读(974) 评论(0) 推荐(0) 编辑
摘要:C++模版 显式实例化、显式具体化、隐式实例化 函数模板是C++新增的一种性质,它允许只定义一次函数的实现,即可使用不同类型的参数来调用该函数。这样做可以减小代码的书写的复杂度,同时也便于修改(注:使用模板函数并不会减少最终可执行程序的大小,因为在调用模板函数时,编译器都根据调用时的参数类型进行了相 阅读全文
posted @ 2017-03-22 10:11 菜鸡一枚 阅读(1362) 评论(0) 推荐(1) 编辑
摘要:【C++11】新特性——auto的使用 C++11中引入的auto主要有两种用途:自动类型推断和返回值占位。auto在C++98中的标识临时变量的语义,由于使用极少且多余,在C++11中已被删除。前后两个标准的auto,完全是两个概念。 1. 自动类型推断 auto自动类型推断,用于从初始化表达式中 阅读全文
posted @ 2016-04-16 15:21 菜鸡一枚 阅读(425) 评论(0) 推荐(0) 编辑