博客专栏  >  编程语言   >  不一样的C++语言

不一样的C++语言

介绍在学习C++过程中对于C++的另外一种认识

关注
2 已关注
40篇博文
  • 40、不一样的C++系列--函数异常声明

    函数异常声明首先来看一段代码:#include #include using namespace std;int func(int i, int j) throw(int, char) { ...

    2017-07-31 22:22
    315
  • 39、不一样的C++系列--类型识别

    类型识别 在面向对象中可能出现下面的情况 基类指针指向子类对象 基类引用成为子类对象的别名 //Base* Base& 静态类型 //Derived 动态类型 Base* p = new Deriv...

    2017-06-25 11:58
    316
  • 38、不一样的C++系列--C++的异常处理

    C++的异常处理异常处理介绍C++内置了异常处理的语法元素 try … catch … try语句处理正常代码逻辑 catch语句处理异常情况 try语句中的异常由对应的catch语句处理 语法: t...

    2017-06-25 10:27
    374
  • 37、不一样的C++系列--C语言异常处理

    C语言异常处理异常的概念 异常的说明 程序在运行过程中可能产生异常 异常(Exception)与Bug的区别 异常是程序运行时可预料的执行分支 Bug是程序中的错误,是不被预期的运行方式 异常(E...

    2017-06-25 08:40
    508
  • 36、不一样的C++系列--单例类模板

    单例类模板对于单例模式,我们都已经很熟悉了,这里我们来亲手制作一个单例类模板: 目标:某些类在整个系统生命期中最多只能有一个对象存在(Single Instance) 要控制类的对象数目,必须对外隐藏...

    2017-06-24 22:30
    501
  • 35、不一样的C++系列--智能指针

    智能指针智能指针是现代C++开发库中最重要的类模板之一,也是C++中自动内存管理的主要手段,能够在很大程度上避开内存相关的问题。STL中的智能指针auto_ptr 生命周期结束时,销毁指向的内存空间 ...

    2017-06-24 19:52
    409
  • 34、不一样的C++系列--数组类模板

    数组类模板首先先了解一个小知识点: 模板参数可以是数值型参数(非类型参数),例如这样:template void func() { //使用模板参数定义局部数组 T a[N]; }...

    2017-06-24 18:07
    485
  • 33、不一样的C++系列--类模板与特化

    类模板类模块的概念和意义在C++中有这样一些类: 主要用于存储和组织数据元素 类中数据组织的方式和数据元素的具体类型无关 如:数组类,链表类,Stack类,Queue类等 C++中将模板的思想应用于类...

    2017-06-24 10:25
    537
  • 32、不一样的C++系列--函数模板

    函数模板泛型编程首先考虑一个问题:c++中有几种交换变量的方法?1、宏代码块:#define SWAP(t, a, b) \ do \ { ...

    2017-06-23 22:35
    618
  • 31、不一样的C++系列--多重继承

    多重继承 C++支持编写多重继承的代码 一个子类可以拥有多个父类 子类拥有所有父类的成员变量 子类继承所有父类的成员函数 子类对象可以当作任意父类对象使用 多重继承的语法规则 //多重继承的本质与单...

    2017-06-23 16:00
    484
  • 30、不一样的C++系列--抽象类和接口

    抽象类和接口抽象类 面向对象中的抽象类可用于表示现实世界中的抽象概念 是一种智能定义类型,而不能产生对象的类 只能被继承并重写相关函数 直接特征是相关函数没有完整的实现 Shape是现实世界中各种图形...

    2017-06-22 09:57
    395
  • 29、不一样的C++系列--对象模型分析

    对象模型分析C++对象模型首先来说一说class的本质: class是一种特殊的struct 在内存中class依旧可以看作变量的集合 class与struct遵循相同的内存对齐规则 class中的...

    2017-06-21 11:48
    427
  • 28、不一样的C++系列--继承与多态

    继承与多态父子间的同名冲突首先来看一段代码:#include #include using namespace std;class Parent { public: int mi; };cl...

    2017-06-20 10:27
    308
  • 27、不一样的C++系列--继承的构造与析构

    继承的构造与析构子类对象的构造 子类中可以定义构造函数 子类构造函数 必须对继承而来的成员进行初始化 直接通过 初始化列表 或者 赋值的方式 进行初始 调用父类构造函数 进行初始化 父类构造函数在...

    2017-06-20 07:10
    344
  • 26、不一样的C++系列--继承的基础知识

    继承继承的概念类之间的两大关系:组合和继承: 组合关系的特点: 将其它类的对象作为自己的成员使用 当前类的对象与成员对象的声明期相同 成员对象在用法上与普通对象完全一致 组合关系的代码示例:clas...

    2017-06-18 17:41
    494
  • 25、不一样的C++系列--类型转换函数

    类型转换函数基础类型转换 标准数据类型之间会进行隐式的类型安全转换 转换规则如下: (char -> short)-> int -> unsigned int -> long -> unsi...

    2017-06-18 14:54
    252
  • 24、不一样的C++系列--i++和++i

    前置操作符和后置操作符首先呢,我们来思考一个问题: //下面的代码有没有区别?为什么? i++; // i的值作为返回值,i 自增 1 ++i; // i自增 1, i 的值作为...

    2017-06-15 09:03
    393
  • 22、不一样的C++系列--函数调用操作符的重载

    函数调用操作符的重载 函数调用操作符(()) 只能通过类的成员函数重载 可以定义不同参数的多个重载函数 用法:Type operator () () { return Type; } 函数调用...

    2017-06-12 09:13
    308
  • 21、不一样的C++系列--数组操作符的重载

    字符串类的兼容性 存在的一些历史遗留问题C语言不支持真正意义上的字符串 C语言用字符数组和一组函数实现字符串操作 C语言不支持自定义类型,因为无法获取字符串类型 C++语言直接支持C语言的所有概念 C...

    2017-06-12 08:45
    229
  • 20、不一样的C++系列--操作符重载

    操作符重载 C++中的重载能够扩展操作符的功能 操作符的重载以函数的方式进行 本质: 用特殊形式的函数扩展操作符的功能 使用: 通过 operator 关键字可以定义特殊的函数 operator ...

    2017-06-11 16:49
    199

img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部