C++
Readtears
这个作者很懒,什么都没留下…
展开
-
【C++】 复数类操作
复数的概念我们高中已经接触过,包含是实部和虚部,For example:2i + 3J;实部和虚部值可为整型,亦可浮点型,那在此实现一下简单的复数类的操作代码如下:class Complex{public: Complex(double real,double imag) { _real = real; _imag = imag; }原创 2016-05-26 12:25:43 · 997 阅读 · 0 评论 -
【C++】 单链表 .cpp
之前,在C语言阶段使用了C编写单链表,简单易懂,那么,今天使用C++再次编写单链表,旨在对比两者之间的区别和异同:下面就是cpp实现的代码:SList.h文件:#pragma oncetypedef int DataType;class SListNode{ friend class SList;public: SListNode(DataType x)原创 2016-05-26 12:25:46 · 480 阅读 · 0 评论 -
【C++】 双向链表.cpp
双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。一般我们都构造双向循环链表,因为双向链表解决了单向链表的不足和问题,而单链表因为出现的问题多,所以在面试中经常会考到单链表的问题。在这里,我用 .cpp对双向链表的基本操作进行实现。具体代码如下: List.h文件:#pr原创 2016-05-26 12:25:49 · 555 阅读 · 0 评论 -
【C++】 浅析深浅拷贝
C++中深拷贝和浅拷贝的问题是很值得我们注意的知识点,如果编程中不注意,可能会出现疏忽,导致bug。本文就详细讲讲C++深浅拷贝的种种。 我们知道,对于一般对象: int a = 1; int b = 2; 这样的赋值,复制很简单,但对于类对象来说并不一般,因为其内部包含各种类型的成员变量,在拷贝过程中就会出现问题例如:#include using namespace std;原创 2016-05-26 12:25:53 · 410 阅读 · 0 评论 -
【C++】 浅析异常
所谓异常,顾名思义就是不正常,有问题。对于人来说有不正常的时候即生病身体不适,那么对于程序也一样,也有不正常即代码“有病”。那么,既然有病就要治疗,就要对症下药!这样才能恢复正常。废了这么多话,还是引出我们C++的“异常”概念。异常,让一个函数可以在发现自己无法处理的错误时抛出一个异常,希望它的调用者可以直接或者间接处理这个问题。而传统的异常处理方法:1.终止程序2.返回一个表示错误的值(很多系统原创 2016-05-26 12:25:55 · 271 阅读 · 0 评论 -
【C++】 浅析智能指针
引言:由于 C++ 语言没有自动内存回收机制,程序员每次 new 出来的内存都要手动 delete。程序员忘记 delete,流程太复杂,最终导致没有 delete,异常导致程序过早退出,没有执行 delete 的情况并不罕见。RAII(Resource Acquisition Is Initialization)资源分配即初始化,定义一个类来封装资源的分配和释放,在构造函数完成资源的分配和初始化原创 2016-05-26 12:25:59 · 441 阅读 · 0 评论 -
【C++】 斐波那契数列
斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义: F(0)=0,(n = 0) F(1)=1,(n = 1)原创 2016-05-26 12:26:01 · 889 阅读 · 0 评论