博客专栏  >  编程语言   >  C++ Primer

C++ Primer

介绍C++基础知识点,关键点,重点和难点。

关注
24 已关注
21篇博文
  • 【C++基础之二十一】菱形继承和虚继承

    菱形继承是多重继承中跑不掉的,Java拿掉了多重继承,辅之于接口。C++中虽然没有明确说明接口这种东西,但是只有纯虚函数的类可以看作Java中的接口。在多重继承中建议使用“接口”,来避免多重继承中可能...

    2014-01-05 09:05
    8333
  • 【C++基础之二十】可变参数的函数

    C++中可变参数的函数是从C中继承而来,可变参数的函数是指函数的参数个数可变,参数类型不定的函数。我们最常见的就是printf()。 1.可变参数函数实现原理 指定参数的函数实现很简单,通过通过指...

    2013-12-24 09:55
    13791
  • 【C++基础之十九】函数对象

    函数指针倒是蛮常见的,这函数对象又是什么呢?什么时候会用到函数对象? 1.什么是函数对象 函数对象就是定义了函数调用操作符,也就是operate()的对象。因此我们可以在定义函数调用操作符的时...

    2013-12-20 09:05
    2742
  • 【C++基础之十八】类继承中的隐藏规则

    记得以前看林锐博士的《高质量C++编程指南》一书有提到类继承中的隐藏问题,当时网上也有不同的声音,觉得并没有隐藏这个东西,后来在看C++ primer的时候确实有提到这个问题(谓之“屏蔽”),这里记下...

    2013-12-10 15:01
    2670
  • 【C++基础之十七】抑制由构造函数定义的隐式转换

    有时候构造函数的隐式转换可以帮我们不少忙,但有时候它也会帮倒忙。所以我们应该要控制它,而不是让它无脑操作。 1.示例 先看一段代码。 #include "stdafx.h" using names...

    2013-11-28 15:38
    2521
  • 【C++基础之十六】数组传参

    1.一维数组 数组作为传参,其实传入的只是数组的首地址。实质上也是值拷贝。调用函数内部会有一个备份,这个备份指向了数组的首地址,所以数组元素可以在调用函数中被改变。由于调用函数只知道数组的首地址,并不...

    2013-09-28 20:08
    3880
  • 【C++基础之十五】内联函数

    1.优点 为什么使用内联函数,而不使用宏定义,虽然宏本身采用的展开来替代函数调用的压栈出栈返回等操作,提高了代码的效率,但是会有两个问题: (1)边际效应 宏只是展开代码而已,所以在一些操作符的优先级...

    2013-09-26 17:32
    2568
  • 【C++基础之十四】函数的缺省参数

    可能会有这么一个函数,在大部分的情况下,我们不用给它传递参数,但在某些特殊情况下,我们需要给它传递参数,那怎么办呢? 简单啊,写两个一样的方法,一个带参,一个不带参。。。 这样也太没水准了。来点高端的...

    2013-09-25 17:32
    2505
  • 【C++基础之十三】指向指针的指针

    话说这玩意真不好理解,一般也不会用到,不过还是拿出来看看,叔到用时方恨嫂啊! 我们从一个例子来看它。 1.一个常见的错误 这个错误在第三篇局部变量的返回里就有讲过了。详见http://blog.c...

    2013-09-24 17:31
    5891
  • 【C++基础之十二】虚函数表和覆盖机制

    1.引出 我们先来看个例子: //空类 class A{}; //int成员变量 class B{ int value; }; //普通成员方法 class C{ void f(){}; }; ...

    2013-09-23 17:33
    4768
  • 【C++基础之十一】虚函数的用法

    虚函数的作用和意义,就不进行说明了,这里主要讨论下虚函数的用法。 1.典型的虚函数用法 可以看到,只有标识为virtual的函数才会产生多态的效果,而且是编译多态。它只能借助指针或者引用来达到多态...

    2013-09-22 15:38
    7018
  • 【C++基础之十】友元函数和友元类

    1.概述 友元提供了一种 普通函数或者类成员函数 访问另一个类中的私有或保护成员 的机制。也就是说有两种形式的友元: (1)友元函数:普通函数对一个访问某个类中的私有或保护成员。 (2)友元类:类A中...

    2013-09-18 11:40
    19659
  • 【C++基础之九】单例模式

    1.作用 单例模式目的就是为了保证一个类只有一个实例。 2.原理 (1)私有静态指针变量实现:使用类的私有静态指针变量指向类的唯一实例,并用一个公有的静态方法获取该实例。 (2)静态局部变量实现:...

    2013-09-17 11:49
    4837
  • 【C++基础之八】函数指针和回调函数

    C++很多类库都喜欢用回调函数,MFC中的定时器,消息机制,hook机制等待,包括现在在研究的cocos2d-x中也有很多的回调函数。 1.回调函数 什么是回调函数呢?回调函数其实就是一个通过函数指针...

    2013-09-16 09:40
    25511
  • 【C++基础之七】extern关键字

    1.作用 (1)放在函数或者变量前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。 (2)与“C”连用,作为连接指定。 2.具体解释及示例 2.1.exte...

    2013-09-14 09:35
    6021
  • 【C++基础之六】运算符的重载

    网上太多有关运算符的重载了,但是写的太过的详细,不适合新手入门,特别是那什么++和--的前增量后增量重载,一元二元运算符重载,特殊运算符,下标运算符,new和delete,甚至是指针运算符的重载,吓退...

    2013-09-13 15:13
    15492
  • 【C++基础之五】函数调用机制与调用约定

    1.示例 栈的作用和功能这里就不再叙述了。 先看一个最简单的函数调用例子: #include "stdafx.h" int call(int _a,int _b); void _tmain() {...

    2013-09-11 14:59
    3860
  • 【C++基础之四】深拷贝和浅拷贝

    1.普通类型对象的拷贝 普通类型对象的拷贝很简单,就是值的复制而已。比如: int _tmain(int argc, _TCHAR* argv[]) { int a=1; int b=a; re...

    2013-09-11 09:47
    3934
  • 【C++基础之三】函数中局部变量的返回

    一般说来,函数中是可以进行局部变量的返回的,不然岂不是全部要用全局变量,如果使用了全局变量,那还有必要进行返回吗?那函数就没有它存在的意义了!但是要注意了,这里所谓的局部变量的返回很有内涵,什么样的值...

    2013-09-10 14:45
    8749
  • 【C++基础之二】常量指针和指针常量

    1.常量指针 定义:具有只能够读取内存中数据,却不能够修改内存中数据的属性的指针,称为指向常量的指针,简称常量指针。 声明:const int * p; 注:可以将一个常量的地址赋值给一个对应类型的常...

    2013-09-10 11:27
    10649

Windows C/C++/C# 编程
1306364062
FFmpeg
1353628011
经典算法研究
323268539
微软面试100题系列
183178461
Java开发进阶
663046592
img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部