问题描述:
(1)定义一个名为CPerson的类,有以下私有成员:姓名、身份证号、性别和年龄,成员函数:构造函数、析构函数、输出信息的函数。并在此基础上派生出CEmployee类,派生类CEmployee增加了两个新的数据成员,分别用于表示部门和薪水。要求派生类CEmployee的构造函数显示调用基类CPerson的构造函数,并为派生类CEmployee定义析构函数,定义输出信息的函数。
...
分类:
其他好文 时间:
2015-05-17 10:52:37
阅读次数:
144
每个类只有一个析构函数,但可以由多个构造函数。
对于一个类,如果程序员不显式的声明定义上述函数,编译器自动的产生4个inline函数,
A();A(const A& );~A(); A& operator=(const A& )
1.不要在构造函数内做与初始化无关的工作,不要在析构函数内做与销毁对象无关的工作。
注意初始化和赋值的区别
初始化:在对象创建的同时使用初值直接填充对象...
分类:
其他好文 时间:
2015-05-16 09:13:19
阅读次数:
111
Java语言出来之前,大家都在拼命的写C或者C++的程序,而此时存在一个很大的矛盾,C++等语言创建对象要不断的去开辟空间,不用的时候有需要不断的去释放控件,既要写构造函数,又要写析构函数,很多时候都在重复的allocated,然后不停的~析构。于是,有人就提出,能不能写一段程序在实现这块功能,每次...
分类:
其他好文 时间:
2015-05-15 17:31:42
阅读次数:
206
类和接口的定义:类用class关键字定义,而接口用Interface关键字定义。可以使用public,internal关键字定义类和接口的可访问性;类可以定义为abstract或sealed,以控制继承性;父类和父类接口在一个用逗号分隔的列表中指定,放在类或接口名和一个冒号的后面。在类定义中,只能指..
例子:#include
using namespace std;class Person {
public://类函数和成员函数都是public的,供外界调用
Person();//无参构造函数,如果没有构造函数会自动创建一个无参构造函数
Person(string name, int age);//有参构造函数
~Person();//析构函数,释放内...
分类:
编程语言 时间:
2015-05-15 09:13:12
阅读次数:
138
1.malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。
2.对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译器控制权限之内,不能够把执行构造函数和析构函数的...
分类:
其他好文 时间:
2015-05-15 09:05:17
阅读次数:
98
//正确使用虚析构函数
//使用虚析构函数,当delete删除一个对象时,能确保析构函数正确执行(动态)
#include
using namespace std;
class B
{
public:
B()
{
cout<<"B"<<endl;
}
virtual void fun()
{
cout<<"B::fun()"<<endl;
}
virtual ~B()
/...
分类:
编程语言 时间:
2015-05-13 10:41:38
阅读次数:
136
GoLang之面向对象Go语言没有沿袭传统面向对象编程中的诸多概念,比如继承、虚函数、构造函数和析构函数、隐藏的this指针等。类方法在Go语言中,可以给任意类型(包括内置类型,但不包括指针类型)添加相应的方法。如下面的这个例子,定义了一个新类型Integer,它和int一样,只是为它内置的int类...
分类:
其他好文 时间:
2015-05-13 06:05:09
阅读次数:
153
如果使用到了多态,则需要在base class中写一个虚析构函数目的是销毁继承类:
上面的base class通常有其他虚成员函数。如果类中没有虚成员函数,也就是类不打算作为base class使用则在类中写了个虚析构函数是错误的:
注意:...
分类:
其他好文 时间:
2015-05-12 23:05:10
阅读次数:
154
**在调用析构函数中出现的异常有两种方法:
一是调用abort强制结束程序:**
二是吞下异常:
**更好的办法是:
针对某一个可能在析构函数中出现异常的部分,为用户提供该部分函数的调用放法从而给用户处理异常的机会:**
注意:...
分类:
其他好文 时间:
2015-05-12 23:04:38
阅读次数:
146