#include<iostream>
#include<stdlib.h>
using namespace std;
class MyClass{
public:
MyClass(int i);
MyClass (const MyClass &obj);
~MyClass (){delete p;}
friend int GetVal(MyClass obj);
private:
int *p;
};
MyClass ::MyClass(int i )
{
p=new int ;
if(!p){
cout<<"Allocation error \n";
exit(1);
}
*p=i;
}
MyClass ::MyClass(const MyClass &obj )
{
p=new int ;
if(!p){
cout<<"Allocation error \n";
exit(1);
}
*p=*obj.p;
}
int GetVal(MyClass obj)
{
return *obj.p;
}
main()
{
MyClass a(1),b(2);
cout <<GetVal(a)<<""<<GetVal(b);
cout<<endl;
cout <<GetVal(a)<<""<<GetVal(b);
}
#include<stdlib.h>
using namespace std;
class MyClass{
public:
MyClass(int i);
MyClass (const MyClass &obj);
~MyClass (){delete p;}
friend int GetVal(MyClass obj);
private:
int *p;
};
MyClass ::MyClass(int i )
{
p=new int ;
if(!p){
cout<<"Allocation error \n";
exit(1);
}
*p=i;
}
MyClass ::MyClass(const MyClass &obj )
{
p=new int ;
if(!p){
cout<<"Allocation error \n";
exit(1);
}
*p=*obj.p;
}
int GetVal(MyClass obj)
{
return *obj.p;
}
main()
{
MyClass a(1),b(2);
cout <<GetVal(a)<<""<<GetVal(b);
cout<<endl;
cout <<GetVal(a)<<""<<GetVal(b);
}