- 论坛徽章:
- 0
|
不知可否?
- #include <iostream>
- using namespace std;
- class base
- {
- public:
- base(){_a=0;}
- base(const base & obj){
- _a=1;
- cout<<"base copy constructor"<<endl;
- }
- base & operator=(const base & obj){
- _a=2;
- cout<<"base operator="<<endl;
- }
- int _a;
- };
- class derive : public base
- {
- public:
- derive(){_b=0;}
- derive(const derive & obj):base(obj){
- _b=1;
- cout<<"derive copy constructor"<<endl;
- }
- derive & operator=(const derive & obj){
- base::operator=(obj);
- _b=2;
- cout<<"derive operator="<<endl;
- }
- int _b;
- };
- int main(int argc, char *argv[])
- {
- derive d1;
- derive d3 = d1;
- cout<<d3._a<<" "<<d3._b<<endl;
- d3 = d1;
- cout<<d3._a<<" "<<d3._b<<endl;
- return 0;
- }
复制代码
[ 本帖最后由 sanbiangongzi 于 2007-10-7 10:19 编辑 ] |
|