c++
lxi__
这个作者很懒,什么都没留下…
展开
-
复数类 complex
定义复数类Complex,包括两个double型的数据成员real和image,要求对+、-、、/、+=、-+、=、/=、几个运算符进行重载以实现复数的运算,并进行验证。#define _CRT_SECURE_NO_WARNINGS #include <iostream> using namespace std;class Complex{public: //默认的构造函数(含原创 2017-09-23 11:06:43 · 2475 阅读 · 0 评论 -
STL模拟实现迭代器
迭代器(iterator)是一中检查容器内元素并遍历元素的数据类型。 模拟实现Vector和List的迭代器版本原创 2017-11-04 17:37:01 · 216 阅读 · 0 评论 -
智能指针
如果没有智能指针,程序员必须保证new对象能在正确的时机delete,四处编写异常捕获代码释放资源,而智能指针可以在退出作用域时——不管是正常离开或是因异常离开——总调用delete来析构在堆栈上动态分配的对象。C++提供了4种智能指针用于对分配的内存进行自动释放,这些智能指针如下: auto_ptr、unique_ptr、shared_ptr、weak_ptr原创 2017-10-29 00:06:46 · 219 阅读 · 0 评论 -
C++泛型编程----(一)模板函数
泛型编程:编写与类型无关的代码,提高代码利用率。 模板是泛型编程的基础 一、模板函数 它不是真的函数,代表了一个函数家族,该函数与类型无关,在使用时被参数化,根据实参类型产生函数的特定类型版本。1、模板的定义://模板的格式://template<class 形参1,class 形参2,...,class 形参名n>//返回类型 函数名(参数列表)//{...}template<typ原创 2017-10-14 03:57:20 · 300 阅读 · 0 评论 -
冒泡排序
冒泡排序:升序、降序+模板原创 2017-11-09 14:16:36 · 167 阅读 · 0 评论 -
C++多态
一、C++多态 多态是指一组具有继承关系的类,拥有相同的接口(函数名、形参和返回值),并允许有各自不同的实现,且一个对象实例只有在调用这共同接口的时候,才能确定调用的是何种实现。 即,“一个接口,多种实现”二、静态多态 编译器在编译期间完成的 静态多态 : 通过”彼此单独定义但支持共同操作的具体类“来表达共同性。 函数多态:即函数重载 概念:基于不同的参数列表,同一函数名可指向不同的函数原创 2017-10-03 01:19:54 · 267 阅读 · 0 评论 -
C++泛型编程----(二)模板类
一、模板参数 二、类模板的特化三、模板的分离编译原创 2017-10-23 02:42:22 · 328 阅读 · 0 评论 -
String类 (浅拷贝/深拷贝/写时拷贝)
浅拷贝:两个对象将引用同一个字符串。存在问题:两个对象指向了同一资源,而析构函数又在对象生命周期结束后可以释放空间,势必会两次返还空间,编译器就会报错。写时拷贝:用引用计数记录空间被使用的个数原创 2017-09-24 15:27:08 · 343 阅读 · 0 评论 -
C++模板类实现Vector
Vector<int>Vector<char>Vector<String>原创 2017-10-16 22:38:56 · 1456 阅读 · 1 评论 -
C++继承
一、基本概念 1、类的继承,是新的类从已有类那里得到已有的特性。或从已有类产生新类的过程就是类的派生。原有的类称为基类或父类,产生的新类称为派生类或子类。 2、如果不显示给出继承方式,默认为private继承。继承方式指定了派生类成员以及类外对象对于从基类继承来的成员的访问权限。3、派生类继承基类中除构造和析构函数以外的所有成员。4、派生类生成: 吸收基类成员(除构造析构函数以外的所有成原创 2017-10-02 01:29:09 · 287 阅读 · 0 评论 -
Date日期类的实现(C++)
本文为了实现日期类的 —前置++/后置++, —前置–/后置– —N天之后的日期 /N天之前的日期 —两个日期之间的距离 —判断两个日期大小原创 2017-09-27 02:05:27 · 514 阅读 · 0 评论 -
动态内存管理
new/delete new[]/delete[] 一定要匹配使用原创 2017-09-24 00:59:45 · 154 阅读 · 0 评论 -
this 指针
在建立对象时,系统会为每一个对象分配独立的存储空间,也就是给每个对象中的数据成员都分配有自己独立的存储空间。 如果对同一个类定义n个对象,则有n组同样大小的空间以存放对象中的数据成员。对于成员函数来说,对象中的数据成员、一个函数的代码段在内存中只有一份。同一个类中的不同对象在调用自己的成员函数时,(一个类中的不同对象在调用自己的成员函数时),其实它们调用的是同一段函数代码。 那么,当原创 2017-09-23 22:20:49 · 243 阅读 · 0 评论 -
堆
#define _CRT_SECURE_NO_WARNINGS 1#include<iostream>using namespace std;#include<vector>template <class T>class Heap{public: Heap(T* array, size_t size) :_size(size) { _array.r原创 2018-02-02 12:49:54 · 126 阅读 · 0 评论