- 博客(28)
- 收藏
- 关注
原创 多态的实现和原理
C++的多态性用一句话概括就是:在基类的函数前加上virtual关键字,在派生类中重写该函数,运行时将会根据对象的实际类型来调用相应的函数。如果对象类型是派生类,就调用派生类的函数;如果对象类型是基类,就调用基类的函数 1:用virtual关键字申明的函数叫做虚函数,虚函数肯定是类的成员函数。 2:存在虚函数的类都有一个一维的虚函数表叫做虚表,类的对象有一个指向虚表开始的虚
2017-10-17 17:47:38 404
原创 大数据运算
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 649
原创 文件压缩和解压缩
#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 464
原创 文件的输入,输出
1:文件打开函数:fopen(欲打开的文件名称or文件路径,哪种方式)2:文件关闭函数:fclose(文件指针)3:文件信息写入函数(数据块):fwrite(要写入数据的地址,要写入数据项的字节数size,要写入size字节数据项的个数,文件指针)4:文件信息读出函数(数据块):fread(要读出数据的地址,要读出数据项的字节数size,要读出size字节数据项的个数,文件指针)5:修
2017-09-25 19:54:29 298
原创 c++动态内存管理
这是我刚开始学编程里整理的一篇总结,主要是来源一本叫《高质量c/c++编程》的书,很多年过去了,重新复习一下。1、malloc()malloc()函数用来分配内存:将总共需要的字节数作为参数传递给该函数,返回值是指向最新分配的内存的指针,而如果内存没有分配好,则返回值是NULL。malloc()的使用技术:some_type *pointer;pointer = malloc(
2017-09-25 17:15:00 292
原创 链表的相关面试题
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 280
原创 类型萃取
#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 326
原创 模板实现顺序表和单链表
模板实现顺序表#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 329
原创 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 286
原创 构造函数访问权限和基类构造函数,派生类的构造函数调用顺序
#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 622
原创 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 356
原创 构造函数,拷贝构造,析构函数,运算符重载。
1.构造函数作用:初始化对象。特点:在创建对象如果类内没用自定义构造函数,系统会自动调用默认的构造函数。1.函数名和类名相同2.没有返回值3.对象构造(对象实例化)时系统自动调用对应的构造函数4.构造函数可以重载5,无参的构造函数和全缺省值的构造函数都认为是缺省的构造函数,并且缺省的构造函数只能有一个2.拷贝构造
2017-07-08 20:21:13 287
原创 strlen,strcpy,strncpy,strcmp,strcat,strstr的用法,函数原型及函数的实现
strlen,strcpy,strncpy,strcmp,strcat,strstr的用法,函数原型及函数的实现
2017-06-16 11:13:21 527
原创 this指针和构造函数
1.this指针及其用法:(1)this指针是一个隐含于成员函数中的指针,它指向正在被成员函数操作的对象。 (2)当对一个对象调用成员函数时,编译程序先将对象的地址赋值给this指针,然后调用成员 函数时,每次成员函数存取数据成员时,由隐含t
2016-10-08 10:48:07 735
原创 求一元二次方程的解
#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 457
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人