1.在C++中对象声明时构造函数的调用是顺序调用,析构函数是逆序调用,说明是使用堆栈来存储。
2、组合类的声明:
private:
CPoint ptCenter;
CSize size;
};
CRect::CRect(int left, int top, int right, int bottom)
:size(right-left, bottom-top), ptCenter((left+right)/2, (top+bottom)/2)
//使用组合对调用类对象的初始化
{ }
void main()
{
CRect rc(10, 100, 80, 250);
rc.Show();
}
3.this为当前对象的引用
void COne::copy(COne &a)
{
if (this == &a) return; //this为当前对象的引用。
*this = a;
}
void main()
{
COne one, two(3, 4);
one.print();
one.copy(two);
one.print();
}
4.静态数据成员的声明和初始化
private:
static int nSum; // 声明静态数据成员
};
int CSum::nSum = 0; // 静态数据成员的初始化,前面要用数据类型
}
cout<<"sum = "<<nSum<<endl;//直接调用,不像JAVA中要声明限定符
5.友元函数
friend CPoint Inflate(CPoint &pt, int nOffset); // 声明一个友元函数
private:
unsigned m_x, m_y;
};
CPoint Inflate ( CPoint &pt, int nOffset ) // 友元函数的定义
{
CPoint ptTemp = pt;
ptTemp.m_x += nOffset; // 直接改变私有数据成员m_x和m_y ,友员函数不会继承,是单向的
ptTemp.m_y += nOffset;
return ptTemp;
}
6.指针与引用
char *str;
str = bMan?"男":"女";
cout<<"性别:"<<str<<endl;//当将str改为*后输出?,改为&str输出:0x0012FE80
}
7.继承中是多继承,private类型的不可以访问,但是可以通过public类型的间接访问
private:
int Age;
};//1.class要用;号来结束
void main()
{ //派生类的child ob;会先调用父类的默认然后自己的默认构造函数。
ME me(24);//2.可将自己初始化;可调用公有基类成员函数,将私有数据初始化;
me.SetData("JeromeCen","0807100404");
//3.可以利用父类的public方法组件自己的方法,并能够间接的访问私有成员
me.InputScore( 85, 76, 91 );
me.Print();
me.ShowAge();
}
8.虚基类,虚函数,抽象类
#include<iostream.h>
class Shape//若有虚基类是为了多继承同一父类时共同维护一份父类拷贝
{ protected:
double x,y;
public:
void set(double i, double j)//虚函数是为了统一接口,动态联编
{ x=i; y=j; }
virtual void area()=0; //声明纯虚函数 ,有纯虚函数的类为抽象类
};
class Triangle: public Shape
{ public:
void area()
{ cout<< "三角形面积: " <<0.5*x*y<<endl; }
};
class Rectangle: public Shape
{ public:
void area()
{ cout<<"矩形面积:" <<x*y<<endl; ; }
};
void main()
{ Shape *p;
char *p1="5";
//测试说明了基本类型指针赋值后*p p都表示值,而&总表示十六位的地址。对象类型则*p出错,p和&p都为地址
cout<<"P的值为:"<<&p1<<endl;
Triangle t;
Rectangle r;
p=&t;
p->set(5.1,10);
p->area();
p=&r;
p->set(5.1,10);
p->area(); }
分享到:
相关推荐
### C++复习大全知识点解析 #### 一、C++概述与发展历史 C++是一种由Bjarne Stroustrup博士在1980年开始研发的面向对象的编程语言,旨在为C语言添加面向对象的特性。起初,面向对象编程概念尚新,Stroustrup博士并...
"C++复习资料精华" 本资源摘要信息涵盖了 C++ 语言的多个重要知识点,包括指针、this 指针、static_cast、reintepret_cast、const_cast、多维数组、Namespace、回调函数等。 1. 指针 在 C++ 中,指针是一种基本的...
根据提供的C++复习题及其答案,我们可以总结出一系列重要的C++知识点,这些知识点不仅涵盖了基础概念,还涉及到了具体的语法细节。下面是针对题目中的知识点进行的详细解释: ### 1. C++程序入口:`main()`函数 - ...
C,C++复习资料,南开100套,C,VC编程,改错,填空C,C++复习资料,南开100套,C,VC编程,改错,填空C,C++复习资料,南开100套,C,VC编程,改错,填空C,C++复习资料,南开100套,C,VC编程,改错,填空C,C++复习资料,...
根据提供的信息来看,这些内容似乎并不完全符合标准的C++复习资料格式,而是包含了一些乱码和不清晰的表达。不过,我会尽力从中提取出与C++相关的知识点,并结合常见的C++复习要点来构建一份详尽的复习指南。 ### ...
"C++ 复习资料总结" 本资源是一个关于C++编程语言的复习资料,涵盖了C++编程的基础知识和高级知识点,包括控制结构、函数、数组、指针、字符串、类和数据抽象、运算符重载、继承、虚拟函数和多态、输入/输出流、...
计算机2级考试C++复习资料 概述 公共基础概述,各章知识点概述以及考试攻略
### 全国计算机等级考试二级 C++ 复习资料知识点解析 #### 一、结构与概念 **结构定义** 结构是指程序中明确规定的组织形式,是实现算法的基础。 1. **准确性**:确保结构准确无误,每个部分都能正确执行其功能。 ...
### C++复习题知识点解析 #### 一、选择题知识点详解 **1. C++源程序的扩展名** - **知识点**: C++源文件的基本概念。 - **详细解析**: C++源程序通常保存在一个文本文件中,文件扩展名为`.cpp`。其他选项解释...
本次分享的C++复习资料非常全面,它覆盖了大学本科阶段C++基础知识的主要内容。以下为资料中提及知识点的详细解说: 1. C++基础语法:包括头文件包含、标准输入输出流以及命名空间的使用。例如,使用`#include...
有关C++课程的一些小练习题,可以用于提升对C++了解的程度,适合于刚入门C++编程的新手使用。
`07计科C++复习题.doc`可能包含了针对这些主题的练习题,而`C++复习资料 .DOC`则可能提供详细的解释和示例。 通过深入学习和实践,我们可以掌握C++的精髓,从而编写出高效、可靠的代码。不断地复习和练习是提升C++...
C++复习资料 复习.html
《C++复习指导大纲》 C++程序设计是软件工程专业中至关重要的一门专业基础课程,旨在培养学生掌握面向过程和面向对象的程序设计思想,以及C++语言的基本概念、语法和编程技巧。通过学习,学生不仅能够理解高级程序...
上海大学通信学院的C++复习资料提供了全面的学习和备考资源,涵盖了C++的核心概念、语法特性以及考试重点。下面我们将深入探讨这些文档可能包含的知识点。 首先,"C++总复习.doc"很可能是对C++语言的全面概述,它...
以下将详细介绍标题和描述中提到的7套C++复习资料以及一个复习网址,帮助你系统学习和提升C++技能。 1. **C++基础篇**:这通常包括C++的基础语法,如变量、数据类型、运算符、控制结构(if-else、switch、for、...
本资料"**C++复习题.rar**"显然是为了帮助学习者巩固C++语言的知识,提升编程技能而准备的一系列练习题目。下面,我们将深入探讨C++的一些关键知识点,以及如何通过解答这些题目来加深理解。 1. **基础语法**:C++...
本文将深入探讨C++复习中的关键知识点,包括标示符命名规则、字符与字符串的区别、运算符的优先级和结合律、函数的使用、函数重载以及sizeof和strlen的区别。 1. 标示符命名规则与关键字: C++中的标示符(如变量名...
C++复习题汇总 本文档总结了C++复习题的知识点,涵盖了C++语言的基础知识、面向对象编程、数组、继承、多态、函数重载、运算符重载等方面的内容。 一、C++语言基础知识 1. C++语言属于面向对象语言。 2. 可用作...