
C++
NavinCodeSpace
立此博客,与君共勉
展开
-
【算法】firstDuplicate
Discription Given an arrayathat contains only numbers in the range from1toa.length, find the first duplicatenumberfor which the second occurrence has the minimal index. In other words, if there are more than 1 duplicated numbers, return thenumbe...原创 2020-06-09 21:13:13 · 256 阅读 · 0 评论 -
【C++】示例:日期
示例:日期题目:定义一个日期类Date,包含年、月、日三个数据成员,以及一个求第二天日期的成员函数和输出日期的成员函数。#include<iostream>using namespace std;class Date{ private: int year,month,day; public: Date(int y,int m,int d){ year=y...原创 2019-10-06 15:33:36 · 240 阅读 · 0 评论 -
【C++】 3.7 静态成员
3.7 静态成员【内容】静态成员分为静态数据成员和静态函数成员【作用】为了实现一个类的多个对象之间的数据共享1、静态数据成员【类内声明格式】static 数据类型 数据成员名【类外定义格式】数据类型名 类名::静态数据成员名=初始值;【访问格式】类名::静态数据成员名; 对象名.静态数据成员名;对象指针->静态数据成员名;【说明】(...原创 2019-09-30 00:01:31 · 359 阅读 · 0 评论 -
【C++】运算符new和delete
运算符new和deleteC++使用运算符new和delete动态进行内存分配和释放1、运算符new和delete的基本形式(1)new的基本形式 运算符new从称为堆的一块自由内存存储区中为程序分配一块与类型字节数相适应的内存空间,并将该块内存的首地址存于指针变量中【示例】指针变量名=new 类型;int *p; //定义一个整型指针变量p...原创 2019-09-25 15:27:29 · 506 阅读 · 0 评论 -
【C++】3.6 对象的赋值和复制
3.6 对象的赋值和复制 3.6.1 对象赋值语句 【示例】#include<iostream>using namespace std;class Myclass{ public: void set(int i,int j){ a=i; b=j; } void show(){ cout<<"a = "<...原创 2019-09-25 09:29:56 · 133 阅读 · 0 评论 -
【C++】5.4 虚函数
目录5.4虚函数5.4.1 虚函数引入5.4.2 虚函数的定义5.4.3纯虚函数和抽象类 5.4虚函数 虚函数是重载的另一种表现形式,提供了运行时的多态机制虚函数允许函数调用时与函数体之间的联系在运行时才建立,也就是动态联编 5.4.1 虚函数引入 【虚函数引入示例】#include<iostream>using namesp...原创 2019-09-25 07:31:19 · 558 阅读 · 0 评论 -
【C++】5.2 运算符重载(三)——赋值运算符“=”的重载和下标运算符 “[ ]” 的重载
目录5.2 运算符重载5.2.6 赋值运算符“=”的重载5.2.7 下标运算符 “[ ]”的重载 5.2 运算符重载 5.2.6 赋值运算符“=”的重载 1、指针悬挂问题(1)创建对象p1和p2时,分别调用构造函数,通过运算符new分别从内存中动态分配一块空间,字符指针ptr指向内存空间(2)执行p2=p1,调用默认的赋值运算符重载函数,使两个对象p...原创 2019-09-24 15:32:29 · 753 阅读 · 0 评论 -
【C++】5.2 运算符重载(二)——"++"和“--”的重载
5.2 运算符重载5.2.5 "++"和"--"的重载1、使用成员函数以前缀方式和后缀方式重载运算符“--”【示例】#include<iostream>using namespace std;class Three{ public: Three(int I1=0,int I2=0,int I3=0); //声明构造函数 void print(); ...原创 2019-09-23 14:15:42 · 344 阅读 · 0 评论 -
【C++】5.2 运算符重载(一)
目录5.2 运算符重载5.2.1 在类外定义的运算符重载函数5.2.2友元运算符重载函数5.2.3成员运算符重载函数5.2.4 成员运算符重载函数与友元运算符重载函数的比较 5.2 运算符重载 【C++运算符重载规则】(1)不能重载的运算符【 . 】 成员访问运算符【 .* 】成员指针运算符【 :: 】作用域运算符【Sizeof】...原创 2019-09-21 14:54:16 · 353 阅读 · 0 评论 -
【C++】5.1 编译时的多态性与运行时的多态性
5.1 编译时的多态性与运行时的多态性1、什么时多态性【定义】(1)在面向对象方法中,不同对象收到相同的消息时,产生不同的行为(即方法)(2)在C++程序设计中,多态性是指用一个名字定义不同的函数,函数执行不同但类似的操作,可以实现用同一个函数名调用不同的内容的函数。“一个接口,多种方法”2、静态联编和动态联编【静态联编】:定义:又称前期联编,系统在编译时就决定如何实现...原创 2019-09-20 19:29:35 · 4366 阅读 · 1 评论 -
【C++】4.5 基类与派生类对象之间的赋值兼容关系
4.5 基类与派生类对象之间的赋值兼容关系【定义】不同类型数据之间的自动转换和赋值,称之为赋值兼容【基类与派生类对象之间的赋值兼容关系】需要基类对象的任何地方,都可以使用公有派生类对象替代。【替代的四种情况】说明:Base为基类,Derived为公有派生类(1)派生类对象可以向基类对象赋值Base b;Derived d;b=d; //用派生类对象d对基类对象b...原创 2019-09-20 18:12:35 · 1079 阅读 · 0 评论 -
【C++】4.4 多重继承
4.4 多重继承【定义】当一个派生类具有两个或多个基类时,这种派生方法成为多重继承或多基类派生。4.4.1 多重继承派生类的声明【语法形式】 class 派生类名:继承方式1 基类名1,.....,继承方式n 基类名n{ 派生类新增的数据成员和成员函数 };【示例】#include<...原创 2019-09-19 15:10:23 · 175 阅读 · 0 评论 -
【C++】4.3 调整基类成员在派生类中的访问属性的其它方法
4.3 调整基类成员在派生类中的访问属性的其它方法4.3.1 同名成员(1)派生类中定义了与基类成员同名的成员,派生类成员覆盖类基类的同名成员(2)派生类中使用基类的同名成员 基类名::成员名4.3.2 访问声明(1)为什么要使用访问声明 对于私有继承,基类的公有成员函数变成类派生的私有成员函数, 外界无法利用派生类对...原创 2019-09-18 15:49:18 · 390 阅读 · 0 评论 -
【C++】示例:常成员函数
示例:常成员函数#include<iostream>#include<stdio.h>#include<string.h>using namespace std;class MP3Player{ //“MP3播放器”类 char *type; //型号 char *color; //颜色pub...原创 2019-09-11 20:36:47 · 1673 阅读 · 0 评论 -
【C++】4.2 派生类与继承 - 派生类的构造函数和析构函数
4.2 派生类的构造函数和析构函数1、使用派生类的构造函数和析构函数的原因(1)基类的构造函数和析构函数不能被继承,在派生类中,如果对派生类新增成员进行初始化,就必须加入派生类构造函数(2)从基类继承的成员仍有基类的构造函数完成(3)但需要在派生类构造函数中对基类的构造函数的参数进行设置4.2.1 派生类构造函数和析构函数执行顺序创建派生类对象时:(1)首先执行基类构造...原创 2019-09-09 18:51:08 · 1193 阅读 · 0 评论 -
【C++】4.1 派生类与继承 - 派生类的概念
4.1 派生类的概念4.1.1 继承的使用(1)已有类称为基类或是父类,产生的新类成为派生类或是子类。(2)继承可以形成类的结构(3)目的:提高代码可重用性4.1.2 派生类的声明(1)声明派生类的格式:class 派生类名:[继承方式]基类名{ //派生类新增的数据成员和成员函数};其中,继承方式有public、private(系统默认)、protec...原创 2019-09-08 19:43:57 · 577 阅读 · 0 评论 -
【C++】3.10 类和对象-常类型
3.10 常类型 3.10.1 常引用 (1)形式:const 类型 & 引用名; (2)常参数:常引用用作函数参数(3)作用:用常引用做参数能够避免实参的更改,保证数据的安全3.10.2 常对象 (1)形式:类名 const 对象名【(参数表)】; 或者 const 类名 ...原创 2019-09-08 17:20:34 · 214 阅读 · 0 评论 -
【C++】3.9 类和对象-类的组合
**3.9 类的组合**(1)定义:在一个类中内嵌另一个类的对象作为数据成员,称为类的组合该内嵌的对象称为对象成员,或子对象(2)形式:class X{ 类名1 对象成员1; 类名2 对象成员2; 、、、 类名n 对象成员n;}类X的构造函数(3)类X的构造函数定义形式:X::X(形参表 0):对象成员1(形参表1),对象成员2(形参表2),....原创 2019-09-07 20:36:01 · 345 阅读 · 0 评论 -
【C++】成员函数
C++成员函数(Member Functions)目录C++成员函数(Member Functions)1、成员函数定义(Member Function Definition)2、内联(Inline)3、常成员函数(Const Member Functions)4、使用对象指针(Using Object Pointer)5、重载成员函数(Overloading Mem...原创 2019-06-02 19:48:42 · 23418 阅读 · 0 评论 -
【C++】文件流 (File Streams)
//==================================// C++程序设计// 文件流(File Streams) //==================================//==================================// ifstream fin(filename,openmode=ios::in);// ofstrea...原创 2019-05-24 00:22:30 · 297 阅读 · 0 评论