• 面向对象设计的10条戒律

    2016-11-01
    面向对象设计的10条戒律
    我们正在审查一些代码,并开始讨论为什么我们走捷径,不遵循常识原则。虽然每个人在对待关于类应该如何基于功能上下文来构建的问题上都有自己的智慧,但仍然有一些基本原则值...
  • C++ 11 新特性之容器相关特性

    2016-08-02
    这是C++11新特性介绍的第四部分,涉及到C++11这次更新中与容器有关的新特性。 不想看toy code的读者可以直接拉到文章最后看这部分的总结。 cbegin和cend 原来的begin和end返回的iterator是否...
  • 如何设计优雅的类结构

    2016-07-22
    如何设计优雅的类结构
    注:正文中的引用是直接引用作者作者的话,两条横线中间的段落的是我自己的观点,其他大约都可以算是笔记了。 「Clean Code」这本书从这一章开始文风有些变化,感觉比较乱,很多...
  • 如何使用C++实现一个简单的集合类

    2016-07-05
    来自于C++程序设计的一个题目。实现一个集合类,要求实现以下4个操作。 向集合中添加元素,如果集合中已存在元素则不添加 从集合中移除元素,移除之前需要先判断集合中元素是否...
  • 漫谈C++:良好的编程习惯与编程要点

    2016-05-29
    漫谈C++:良好的编程习惯与编程要点
    以良好的方式编写C++ class 假设现在我们要实现一个复数类complex,在类的实现过程中探索良好的编程习惯。 ① Header(头文件)中的防卫式声明 complex.h: # ifndef __COMPLEX__# define __COMPLEX__class...
  • 算法分析的正确姿势

    2016-05-08
    一、前言 在进一步学习数据结构与算法前,我们应该先掌握算法分析的一般方法。算法分析主要包括对算法的时空复杂度进行分析,但有些时候我们更关心算法的实际运行性能如何,此...
  • C++中引用和匿名对象的理解和本质剖析

    2016-04-14
    C++中引用和匿名对象的理解和本质剖析
    大家对C++的引用应该都不陌生吧,抱着既要知其然,也要知其所以然的态度。下面将按照是什么?怎么用?为什么需要?本质剖析的流程来向大家一一描述。 引用是什么? 引用其实就...
  • C++编译期多态与运行期多态

    2016-01-16
    C++编译期多态与运行期多态
    前言 今日的C++不再是个单纯的带类的C语言,它已经发展成为一个多种次语言所组成的语言集合,其中泛型编程与基于它的STL是C++发展中最为出彩的那部分。在面向对象C++编程中,多态...
  • 学习C++编程语言的最大难度

    2016-01-14
    困难度之一 C++ 是个难学易用的语言,这句话相信很多人都心有戚戚。C++的学习难度,一在于语言本身太多的幕,另一个就在于 paradigm shift (思考模式的移转)。 传统语言如 C, Pascal,...
  • 深入理解C++中的异常处理机制

    2015-12-31
    异常处理 增强错误恢复能力是提高代码健壮性的最有力的途径之一,C语言中采用的错误处理方法被认为是紧耦合的,函数的使用者必须在非常靠近函数调用的地方编写错误处理代码,...
  • 如何成为一个优秀的高级C++程序员

    2015-12-31
    如何成为一个优秀的高级C++程序员
    C++这门语言从诞生到今天已经经历了将近30个年头。不可否认,它的学习难度都比其它 语言较高。而它的学习难度,主要来自于它的复杂性。现在C++的使用范围比以前已经少了很多,...
  • C++对象模型详解

    2015-12-10
    C++对象模型详解
    何为C++对象模型? C++对象模型可以概括为以下2部分: 1. 语言中直接支持面向对象程序设计的部分 2. 对于各种支持的底层实现机制 语言中直接支持面向对象程序设计的部分,如构造函...
  • C++ 隐式类类型转换

    2015-12-10
    C++ 隐式类类型转换
    《C++Primer》中提到: 可以用 单个形参来调用 的构造函数定义了从 形参类型 到 该类类型 的一个隐式转换。 这里应该注意的是, 可以用单个形参进行调用 并不是指构造函数只能有一个...
  • C++函数指针详解

    2015-12-10
    学习c++的过程中,指针是难点,熟悉了指针之后,还有一个让人很蛋疼的难点,那就是函数指针了。本博文详细介绍一下常见的各种坑爹的函数指针。 与数据一样,函数也有地址,函数...
  • C++指针的概念解读

    2015-12-10
    指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的类型,指针的值或者叫指针所指向...
  • C++二叉查找树实现过程详解

    2015-11-19
    C++二叉查找树实现过程详解
    什么是二叉查找树 在数据结构中,有一个奇葩的东西,说它奇葩,那是因为它重要,这就是树。而在树中,二叉树又是当中的贵族。二叉树的一个重要应用是它们在查找中的应用,于是...
  • C++最大的敌人是它的过去

    2015-11-19
    在过去的几年里,我们谈到了关于C++的复兴。我们不得不承认微软是这项运动中主要参与者,我记得在Craig Symonds和Mohsen Agsen在视频中提到了这件事。 在2011年,微软写了许多文章来宣布...
  • C++的管理扩展

    2015-11-02
    C++的管理扩展
    简介 C++管理扩展是一组语言扩展,它帮助Microsoft Visual C++开发人员为微软.NET编写应用程序。 管理扩展是有用的,如果你: 希望提高开发人员使用C++编写.NET应用程序的生产率 要分阶段...
  • 如何成为一名C++程序员

    2015-11-02
    入门 : 入门就是要初步对编程的思想有个了解,并且能编程解决一些小问题。入门一定要选好书,难度如果太低了会造成对读者的误导,以为编程就是这么回事;也不能太高深,免的...
  • C++在线教程

    2014-12-02
    ...
  • C++对字符串流的读写

    2014-11-14
    文件流是以外存文件为输入输出对象的数据流,字符串流不是以外存文件为输入输出的对象,而以内存中用户定义的字符数组(字符串)为输入输出的对象,即将数据输出到内存中的字符...
  • C++对二进制文件的读写操作

    2014-11-14
    二进制文件不是以ASCII代码存放数据的,它将内存中数据存储形式不加转换地传送到磁盘文件,因此它又称为 内存数据的映像文件 。因为文件中的信息不是字符数据,而是字节中的二进...
  • C++对ASCII文件的读写操作

    2014-11-14
    如果文件的每一个字节中均以ASCII代码形式存放数据,即一个字节存放一个字符,这个文件就是ASCII文件(或称字符文件)。程序可以从ASCII文件中读入若干个字符,也可以向它输出一些字符。...
  • C++文件的打开与关闭

    2014-11-14
    这里讲一下如何打开和关闭磁盘上的文件,其他外设(U盘、光盘等)上的文件与此相同。 打开文件 所谓打开(open)文件是一种形象的说法,如同打开房门就可以进入房间活动一样。 打开...
  • C++文件流类与文件流对象

    2014-11-14
    文件流是以外存文件为输入输出对象的数据流。输出文件流是从内存流向外存文件的数据,输入文件流是从外存文件流向内存的数据。每一个文件流都有一个内存缓冲区与之对应。 请区...