freesoft 发表于 2007-8-27 08:02:53

编程马拉松(14)认识:类


freesoft:C++
//从类:class开始,真正的面向对像的程序。
//class和struct有很多共同点。但也要注意区别。引用一个网上的例子说明一下。
#include <iostream>
#include <string>
using namespace std;   
class Teacher
{
public://这里要声明为公有,class默认是private私有.
    Teacher()//构造函数。有点像NEW
    {
      director = new char;
      strcpy(director,"王大力");
   }
    ~Teacher()//析构函数。有点像delete
    {
      cout<<"释放堆区director内存空间1次"<<endl;
      delete[] director;
   }
    char *show();
protected://保护类型
    char *director;
      
};
char *Teacher::show()//通过Teacher类内函数反回director地址
{
    return director;
}
class Student
{
public:
    Student()
    {
      number = 1;
      score = 100;
    }
    void show();

protected:
    int number;
    int score;
    Teacher teacher;//通过Teacher类定义teacher

};

void Student::show()//通过Student定义show函数体。
{
    cout<<teacher.show()<<endl
                <<number<<endl
                <<score<<endl;
}
void main()
{
    Student a;
    a.show();
    Student b;
    for(int i=0; i<sizeof(b)/sizeof(Student); i++) // 如果把这里,标注起来。看看结果。
    {
      b.show();
                cout<<"次数:"<<i<<endl;
    }
      
}
//这段程序的目的是为了让他大家认识一下,类了一些基本的应该用。

wofan 发表于 2007-8-27 14:10:58

这个系列看起来不错
页: [1]
查看完整版本: 编程马拉松(14)认识:类