类的题型总结和学习心得

一.题型总结

选这几个类是因为这几个类比较简单易懂,一个基本类应具有的东西也都不少

1.指针访问的类

#include<iostream>
using namespace std;
class Tclass
{public:
int x,y;
void print()
{cout<<x<<","<<y<<endl;}
};
int add(Tclass *ptf)
{return(ptf->x+ptf->y);}
int main()
{Tclass test,*pt=&test;
pt->x=100;
pt->y=200;
pt->print();
test.x=150;
test.y=450;
test.print();
cout<<"x+y="<<add(&test)<<endl;

2.学生信息类

#include<bits/stdc++.h>
usingnamespace std;

classstudent
{
   string name;
   int nu;
   int score[3];
   float average;
   int order;
   public:
   student(int id,string na,int x,int y, int z):name(na),nu(id)
   {
       score[0]=x,score[1]=y,score[2]=z;
       order=1;
       average=(score[0]+score[1]+score[2])/3;
   }
   student()
   {
       score[0]=score[1]=score[2]=0;
       order=1;
       average=0;
   }
   int getNu(){return nu;}
   float getAverage(){return average;}
   void setAverage(int ave){average=ave;}
   int getOrder(){return order;}
   void setOrder(int x){order=x;}
   string getName(){return name;}
   void setName(string name){this->name=name;}
   void display();
};
 void student::display()
   {
       cout<<name<<"\t"<<nu<<"\t"<<score[0]<<"\t"<<score[1]<<"\t"<<score[2]<<"\t"<<average<<"\t\t"<<order<<endl;
   }
   int main()
   {
       student s(1,"ff",66,77,88);
       s.display();
       cout<<s.getAverage()<<endl;
       s.setName("cc");
       s.display();
   }

二。学习心得

学习类的感受就是一个字,难。概念又多又杂,还难以理解。而且代码的长度和之前相比骤然上升,以前最多20来行,现在要上百行。一些概念即使理解了 也不大会使用,比如,复制构造函数,this指针,get set函数等。还有就是和之前写程序的步骤也有不同,写类,需要先想好用到哪些数据,要将每个需要用到的想全,然后,再去想需要哪些函数来解决这个问题。总之类是一个坎,要想学会,不是很容易。

猜你喜欢

转载自blog.csdn.net/ly_jewel/article/details/80076300
今日推荐