《C++捷径教程》读书笔记--Chapter 11--类(完结)

//--《C++捷径教程》读书笔记--Chapter 11--类(完结)
//--Chapter 11--类
//--03/28/2006 Tues.
//--Computer Lab
//--Liwei

 

//--程序#7  use struct to create class
#include <iostream>
using namespace std;

struct c1{
 int get_i();
 void put_i(int j);
private:
 int i;
};

int c1::get_i()

 return i;
}

void c1::put_i(int j)
{
 i=j;
}

int main()
{
 c1 s;
 s.put_i(10);
 cout<<s.get_i()<<'/n';

 return 0;
}

 

//--程序#8  use struct to create class(this use class)
#include <iostream>
using namespace std;

class c1{
 int i;
public:
 int get_i();
 void put_i(int j);
};

int c1::get_i()
{
 return i;
}

void c1::put_i(int j)
{
 i=j;
}

int main()
{
 c1 s;
 s.put_i(10);
 cout<<s.get_i()<<'/n';

 return 0;
}


//--程序#9  use union to create class
#include <iostream>
using namespace std;

union u_type{
 u_type(short int a);
 void showchars();
 short int i;
 char ch[2];
};

u_type::u_type(short int a)
{
 i=a;
}

void u_type::showchars()
{
 cout<<ch[0]<<" "<<ch[1]<<'/n';
}

int main()
{
 u_type u(22252);
 u.showchars();

 return 0;

}

 

 


//--程序#10  use inline
#include <iostream>
using namespace std;

class c1{
 int i;
public:
 int get_i();
 void put_i(int j);
};

inline int c1::get_i()
{
 return i;
}

inline void c1::put_i(int j)
{
 i=j;
}

int main()
{
 c1 s;
 s.put_i(10);
 cout<<s.get_i();

 return 0;
}

 

 

//--程序#11  use inline
#include <iostream>
using namespace std;

class c1{
 int i;
public:
 int get_i(){ return i;};
 void put_i(int j){ i=j; };
};

 

int main()
{
 c1 s;
 s.put_i(10);
 cout<<s.get_i();

 return 0;
}

 

 


//--程序#12  use object array
#include <iostream>
using namespace std;

enum resolution{low,medium,high};

class display{
 int width;
 int height;
 resolution res;
public:
 void set_dim(int w, int h){ width=w; height=h;};
 void get_dim(int &w,int &h){ w=width; h=height;};
 void set_res(resolution r){ res=r;}
 resolution get_res(){ return res;}
};

char names[3][7]={
 "low",
 "medium",
 "high",
};


int main()
{
 display display_mode[3];
 int i,w,h;

 display_mode[0].set_res(low);
 display_mode[0].set_dim(640,480);

 display_mode[1].set_res(medium);
 display_mode[1].set_dim(800,600);

 display_mode[2].set_res(high);
 display_mode[2].set_dim(1600,1200);

 cout<<"Available display modes:/n/n";

 for(i=0; i<3; i++)
 {
  cout<<names[display_mode[i].get_res()]<<":  ";
  display_mode[i].get_dim(w,h);
  cout<<w<<" by "<<h<<'/n';
 }

  return 0;
}

 

 

 


//--程序#13  use object array
#include <iostream>
using namespace std;

class samp{
 int a;
public:
 samp(int n) { a=n; }
 int get_a() { return a; }
};

int main()
{
 samp samparray[4]={-1, -2, -3, -4};
 int i;

 for(i=0; i<4; i++)
   cout<<samparray[i].get_a();
 
 cout<<'/n';

 return 0;

}

 

 

 

//--程序#14  use object array
#include <iostream>
using namespace std;

class samp{
 int a,b;
public:
 samp(int n, int m) { a=n; b=m; }
 int get_a() { return a; }
 int get_b() { return b; }
};

int main()
{
 samp samparray[4]={samp(1,2), samp(3,4), samp(5,6), samp(7,8)};
 int i;

 for(i=0; i<4; i++)
   cout<<samparray[i].get_a()<<' '<<samparray[i].get_b()<<'/n';
 
 cout<<'/n'<<'/n';;

 return 0;

}

 

 

 

 

//--程序#15  use object point
#include <iostream>
using namespace std;

class p_example{
 int num;
public:
 void set_num(int val) {num=val;}
 void show_num();
};

void p_example::show_num()
{
 cout<<num<<'/n';
}

int main()
{
 p_example ob,*p;

 ob.set_num(1);
 ob.show_num();

 p=&ob;
 p->show_num();

 return 0;
}

 

 

 


//--程序#16  use object point
#include <iostream>
using namespace std;

class p_example{
 int num;
public:
 void set_num(int val) {num=val;}
 void show_num();
};

void p_example::show_num()
{
 cout<<num<<'/n';
}

int main()
{
 p_example ob[2],*p;

 ob[0].set_num(10);
 ob[1].set_num(20);

 p=&ob[0];
 p->show_num();

 p++;
 p->show_num();

 p--;
 p->show_num();

 return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值