自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

俞铭琪学C++的专栏

记录C++学习

  • 博客(11)
  • 收藏
  • 关注

转载 【转】C++ 字符串与16进制字符串之间的转换

string t_sHexStr = "DF";unsigned long t_ulValue = 0;sscanf(t_sHexStr.c_str(), "%x", &t_ulValue);

2016-08-10 12:50:53 2144

转载 一篇讲得非常好的build模式的解释文章

下面是我自己对建造者模式的理解。具体我还没在开发中应用过,这只是对于书本的理解。建造者模式建造者模式:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。这是建造者模式的标准表达,不过看着让人迷惑,什么叫构建和表示的分离?一个对象使用构造函数构造之后不就固定了,只有通过它方法来改变它的属性吗?而且还要同样的构建过程搞出不同的表示,怎么可能呢?多写几个构造函数?

2015-09-03 18:18:21 2536

转载 构造函数为什么不能是虚函数

1. 从存储空间角度,虚函数对应一个指向vtable虚函数表的指针,这大家都知道,可是这个指向vtable的指针其实是存储在对象的内存空间的。问题出来了,如果构造函数是虚的,就需要通过 vtable来调用,可是对象还没有实例化,也就是内存空间还没有,怎么找vtable呢?所以构造函数不能是虚函数。2. 从使用角度,虚函数主要用于在信息不全的情况下,能使重载的函数得到对应的调用。构造函数本身就是

2013-12-17 18:30:26 614

原创 [转自鉴客的博客]深入理解C++动态绑定

为了支持c++的多态性,才用了动态绑定和静态绑定。理解他们的区别有助于更好的理解多态性,以及在编程的过程中避免犯错误,需要理解四个名词:1、对象的静态类型:对象在声明时采用的类型。是在编译期确定的。2、对象的动态类型:目前所指对象的类型。是在运行期决定的。对象的动态类型可以更改,但是静态类型无法更改。关于对象的静态类型和动态类型,看一个示例:class B{}class C

2013-12-04 22:06:39 429

转载 Java中final 与C++中Const的区别

(1)final在java中定义常量,可作用于基本类型或者类类型,若是作用于类类型,则此类类型不能作为父类被继承,也就是说它的下面不能有子类,这样的类叫做原子类。    C++中的const定义常量,(2)Java中的final如果是对于基本类型,那和C++   const是一样的    但是如果是对对象而言,不同了     (3)final表示这个句柄是不可改

2013-11-23 16:37:58 1273

转载 C++内部类与JAVA内部类的不同

C++中好像不区分内部类与嵌套类两个名词。内部类与嵌套类都是指在类中定义类。局部类是指在函数中定义类。(c++不能在函数中定义函数。c++在类中定义的函数也就是成员函数。)(c++内部类与java内部类最大的区别就是:c++的内部类对象没有外部类对象的指针,不能访问外部类对象的非静态成员;java的非静态内部类对象有外部类对象的指针,能访问外部类对象的非静态成员。)

2013-11-23 12:56:24 1128

转载 【转】C++内部类

#include     class Outer  {        public: Outer()        {              cout"Invoke Outer Constructor"<<endl ;       }             class Inner        {              public: Inner()              { 

2013-11-23 12:45:57 610

转载 为什么static 成员函数不能为const

以下是转载自CSDN某大牛博客(复制的时候手快了,忘了记名字)最近在网上查资料的时候偶然看到有人说static成员函数不能用const修饰的问题,感觉有点奇怪,以前都没有这么用过,也没有想过他们两个到底能不能搭配起来使用,后来仔细一想发现确实是这么回事,因为我们在定义一个类对象的时候,实际上只给该对象的非静态的数据成员分配内存空间(假设没有虚函数),而该类的静态成员数据以及该类的函数都在编译的

2013-11-10 22:25:10 1950

原创 如何输出全排列

写这篇博文的原因是源于今年校招笔试常考的一道题。鉴于我是一个特别懒的人,但是由于多次跪在这道题上,我觉得我不得不或者说应当在这道题上做一些事情了。题目原意是要输出一个字符串的全排列。(各个公司可能会有题目的不同版本)输入:bcd输出:bcd bdc cbd cdb dcb dbc代码如下:#include using namespace std;char *str;//

2013-11-08 12:49:02 942

转载 mutable使用方法——From百科

在C++语言中,是命令语言——如果一个函数被const 修饰,那么它将无法修改其成员变量的,但是如果这个成员变量是被mutable修饰的话,则可以修改。mutable 可以用来指出,即使结构或者类变量为const,其某个成员也可以被修改。在c++的类中, 如果一个函数被const 修饰,那么它将无法修改其成员变量的,但是如果这个成员变量是被mutable修饰的话,则可以修改。例如s

2013-11-08 10:05:55 671

转载 C++中的explicit

C++提供了关键字explicit,可以阻止不应该允许的经过转换构造函数进行的隐式转换的发生。声明为explicit的构造函数不能在隐式转换中使用。C++中, 一个参数的构造函数(或者除了第一个参数外其余参数都有默认值的多参构造函数), 承担了两个角色。 1 是个构造器 2 是个默认且隐含的类型转换操作符。所以, 有时候在我们写下如 AAA = XXX, 这样的代码, 且恰好XXX的类型正

2013-11-07 20:56:58 481

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除