当前位置:文档之家› 扬州大学物理学院c++复习大纲

扬州大学物理学院c++复习大纲

1.名字空间:namespace XXX;

作用域运算符 ::

using namespace XXX;

#include

等同于

#include

Using namespace std;

2.new和delete

普通变量

p=new int;

*p=5;

等价于

p=new int(5);

数组

#include

void main()

{int *p;

p=new int[5];

for(int i=0;i<5;i++)p[i]=i*i;

for(i=0;i<5;i++)cout<

cout<

delete []p;

}

结果:0 1 4 9 16

3运算符

::x可以作为全局变量

4.引用运算、 取地址

#include

void main()

{int a;

int &m=a;

int *b=&m;

a=5;

cout<<"m="<

}

test::test(int n, float f)

{ num=0;

f=1.2;

cout<<"n="<

}

void main()

{ test x;

test y(10, 21.5); }

结果:Default

n=10,f=21.5

拷贝构造函数

class cat

{private:

int age;

public:

cat();

cat(cat &);};

cat::cat(cat &other)

{age=other.age;

}

拷贝构造函数

拷贝构造函数的功能是用一个已有的对象来初始化一个被创建的同类对象,是一种特殊的构造函数,具有一般构造函数的所有特性,当创建一个新对象时系统自动调用它;其形参是本类对象的引用,它的特殊功能是将参数代表的对象逐域拷贝到新创建的对象中。

用户可以根据自己实际问题的需要定义特定的拷贝构造函数,以实现同类对象之间数据成员的传递。如果用户没有声明类的拷贝构造函数,系统就会自动生成一个缺省拷贝构造函数,这个缺省拷贝构造函数的功能是把初始对象的每个数据成员的值都复制到新建立的对象中。

自动调用的4种情况

1、 用类的一个对象去初始化另一个对象

2、 用类的一个对象去初始化另一个对象时的另外一种形式

3、 对象作为函数参数传递时,调用拷贝构造函数。

4、 如果函数的返回值是类的对象,函数调用返回时,调用拷贝构造函数。

拷贝构造函数分为两种,深拷贝和浅拷贝构造函数。由C++提供的默认拷贝构造函数是浅拷贝复制(逐个成员依次拷贝),即只复制对象空间而不复制资源。数组是可以用浅拷贝的.

如果对象的数据成员包括指向堆空间的指针,就不能使用浅拷贝方式。深拷贝需要同时复制对象的空间和资源。

12.基本数据类型转换为类类型

class A

{public:

A();

A(int);

};

f(A a) // f函数的定义;f函数的形参为A类的对象

f(1); /*f函数的调用;进行f函数调用时先构造一个A类对象,调用A::A(int)

类类型向基本型转换

#include

class RMB

相关主题