c++实例研究

从0开始

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  104 随笔 :: 0 文章 :: 20 评论 :: 0 Trackbacks
#include <cstdlib>
#include 
<iostream>
using namespace std;


class Foo1
{
public:
    Foo1(
int* pp, int vv):p(new int(*pp)),val(vv){cout<<"Foo construction\n";}
    
    Foo1(
const Foo1& other){cout<<"Foo1 copy\n"; p = new int(*other.p); val=other.val;}
    Foo1
& operator=(Foo1& rhs){cout<<"Foo1 assign\n"; delete p; p = new int(*rhs.p); val=rhs.val; return *this;}
    
~Foo1(){cout<<"Foo1 destruction\n"; delete p;}
    
    
void show(){cout<<*p<<' '<<val<<endl;}
public:
    
int *p;
    
int val;
}
;



int main()
{
    
int a=9,b=10;
    
int* p=&a;
    
int* pp=&b;
    Foo1 f(p,a);
    Foo1 f2(f);
    Foo1 f3(pp,b);
    f3 
= f2;
    f.show();f2.show();f3.show();
    (
*f.p)++;
    f.show();f2.show();f3.show();
    
return 0;
}

posted on 2010-05-08 13:59 elprup 阅读(145) 评论(0)  编辑 收藏 引用 所属分类: c++实例

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理