自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 多态的实现和原理

C++的多态性用一句话概括就是:在基类的函数前加上virtual关键字,在派生类中重写该函数,运行时将会根据对象的实际类型来调用相应的函数。如果对象类型是派生类,就调用派生类的函数;如果对象类型是基类,就调用基类的函数  1:用virtual关键字申明的函数叫做虚函数,虚函数肯定是类的成员函数。    2:存在虚函数的类都有一个一维的虚函数表叫做虚表,类的对象有一个指向虚表开始的虚

2017-10-17 17:47:38 373

原创 大数据运算

1、大数的数据类型设计 可以用一个string和一个long long类型来表示一个大数类型,long long类型表示没有超出范围,string表示超出范围的大数。在初始化的时候我们可以将string和long long都进行初始化,在运算的时候再判断是用long long运算还是用string进行运算。typedef long long INIT64;class BigData{

2017-10-09 23:16:48 609

原创 文件压缩和解压缩

#pragma once #include #include using namespace std; template struct Less { bool operator()(const T& l, const T& r) { return l < r; } }; template str

2017-10-09 22:16:56 437

原创 文件的输入,输出

1:文件打开函数:fopen(欲打开的文件名称or文件路径,哪种方式)2:文件关闭函数:fclose(文件指针)3:文件信息写入函数(数据块):fwrite(要写入数据的地址,要写入数据项的字节数size,要写入size字节数据项的个数,文件指针)4:文件信息读出函数(数据块):fread(要读出数据的地址,要读出数据项的字节数size,要读出size字节数据项的个数,文件指针)5:修

2017-09-25 19:54:29 270

原创 c++动态内存管理

这是我刚开始学编程里整理的一篇总结,主要是来源一本叫《高质量c/c++编程》的书,很多年过去了,重新复习一下。1、malloc()malloc()函数用来分配内存:将总共需要的字节数作为参数传递给该函数,返回值是指向最新分配的内存的指针,而如果内存没有分配好,则返回值是NULL。malloc()的使用技术:some_type *pointer;pointer = malloc(

2017-09-25 17:15:00 263

原创 堆的创建

堆的创建

2017-09-07 10:46:04 240

原创 链表的相关面试题

Linklits.htypedef int DataType;typedef struct Node{ DataType _data; struct Node* next;}Node,*pNode,*pList;void InitLinkList(pList* pplist)//链表初始化pNode newNode(DataType data)//创建新节点void PushBac

2017-08-07 14:49:07 257

原创 类型萃取

#include#include#includeusing namespace std;class Truetype{public: bool Get() { return true; }};class Falsetype{public: bool Get() { return false; }};templateclass TypeTraits{

2017-08-03 11:31:59 300

原创 模板实现顺序表和单链表

模板实现顺序表#include#include#includeusing namespace std;templateclass SeqList{public: SeqList(); SeqList(T*pData,size_t _size); SeqList(const SeqList&s); SeqList& operator=(const SeqList&s); ~

2017-07-30 12:43:24 308

原创 c++实现顺序表

//c++实现顺序表#include#include#includetypedef int DataType;using namespace std;class SeqList{public: SeqList(size_t size=0,size_t capatity=3,DataType* pData=NULL) :_size(size) ,_capatity(size

2017-07-27 22:49:24 260

原创 构造函数访问权限和基类构造函数,派生类的构造函数调用顺序

#include#includeusing namespace std;//1.访问权限class B{public: void Fun1(int b1,int b2,int b3) { _b1=b2; _b2=b2; _b3=b3; }public: int _b1;protected: int _b2;private: int _b3;};cla

2017-07-22 12:53:50 582

原创 String类的增删查改

2017-07-15 13:31:38 309

原创 string类,浅拷贝,深拷贝(简洁版),写时拷贝

2017-07-12 20:02:12 274

原创 c++日期类

2017-07-10 17:58:43 419

原创 const 的用法(全面得一匹)

1.const的用法:1.修饰变量const int  a=10;a=20; //错误,不可被修改2.修饰函数的参数保护传参时参数不被修改 3.修饰函数的返回值指针传递:函数const char * GetString(void);正确的用法是: const char *str = GetString();

2017-07-09 14:33:00 329

原创 构造函数,拷贝构造,析构函数,运算符重载。

1.构造函数作用:初始化对象。特点:在创建对象如果类内没用自定义构造函数,系统会自动调用默认的构造函数。1.函数名和类名相同2.没有返回值3.对象构造(对象实例化)时系统自动调用对应的构造函数4.构造函数可以重载5,无参的构造函数和全缺省值的构造函数都认为是缺省的构造函数,并且缺省的构造函数只能有一个2.拷贝构造

2017-07-08 20:21:13 260

原创 Complex复数类

Complex类

2017-07-08 16:32:29 308

原创 静态,动态顺序表

动静态顺序表的相关函数实现

2017-06-19 15:09:10 314

原创 strlen,strcpy,strncpy,strcmp,strcat,strstr的用法,函数原型及函数的实现

strlen,strcpy,strncpy,strcmp,strcat,strstr的用法,函数原型及函数的实现

2017-06-16 11:13:21 492

原创 浅拷贝,深拷贝,简洁版的深拷贝,浅拷贝的优化版(引用计数)

浅拷贝,深拷贝,简洁版的深拷贝,浅拷贝的优化版(引用计数)

2016-11-09 20:42:12 410

转载 malloc/free和new/delete的不同

malloc/free和new/delete的不同

2016-10-10 01:26:32 223

原创 this指针和构造函数

1.this指针及其用法:(1)this指针是一个隐含于成员函数中的指针,它指向正在被成员函数操作的对象。                                  (2)当对一个对象调用成员函数时,编译程序先将对象的地址赋值给this指针,然后调用成员                                           函数时,每次成员函数存取数据成员时,由隐含t

2016-10-08 10:48:07 691

原创 三子棋

三子棋

2016-07-28 13:38:30 466

原创 利用函数递归逆序输出一个字符串

利用函数递归逆序输出一个字符串

2016-07-28 13:35:51 6914

原创 输入任何一个三位数判断是否是水仙花数

输入任何一个三位数判断是否是水仙花数

2016-06-27 13:52:14 4200

原创 在屏幕上用*输出任何长度的菱形

在屏幕上用*输出任何长度的菱形

2016-06-26 10:29:45 366

原创 求一元二次方程的解

#include#include#define EPS 0.00000001int main(){        double a,b,c;        scanf("%lf%lf%lf",&a,&b,&c);       if((a>-EPS)&&(a         {                 printf("该方程不是一元二次方程");   

2016-06-19 09:37:52 417

原创 交换数组A和数组B的元素(这两个数组大小相同)

新手上线

2016-06-15 13:31:19 657

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除