C++ 类与对象

2019-08-22  本文已影响0人  samtake

在C++中通常有main函数以及一个或多个既包含数据成员也包含成员函数的类构成,所以:

image.png

定义一个具有成员函数的类

//定义
class GradeBook {
    //  
public:
    void displayMessage(){
        cout<<"grade book"<<endl;
    }
};

//调用
void funcTestGradeBook(){
    GradeBook myGradeBook;
    myGradeBook.displayMessage();
}

输出

Hello, World!
grade book
Program ended with exit code: 0

定义一个有参成员函数

//定义一个有参成员函数
   void displayMessageWithParms(string courseName){
       cout<<"grade book"<< courseName <<endl;
   }

调用

string courseName;
    cout<< "enter course name:"<<endl;
    getline(cin, courseName);
    cout<<endl;
    myGradeBook.displayMessageWithParms("Chinese");
    myGradeBook.displayMessageWithParms(courseName);

输出

enter course name:
kjjkjkj

grade bookChinese
grade bookkjjkjkj
Program ended with exit code: 0

数据成员、set函数与get函数

class GradeBookHaveLocalVariable{
public:
    void setCourseName(string name){
        courseName = name;
    }
    string getCourseName(){
        return courseName;
    }
    
    void displayMessage(){
        cout<<"course  name: "<< getCourseName() <<endl;
    }
    //定义一个有参成员函数
    void displayMessageWithParms(string courseName){
        cout<<"grade book"<< courseName <<endl;
    }
private:
    string courseName;
};

输出

course  name: 语文
Program ended with exit code: 0

用构造函数初始化对象

构造函数:

class GradeBookConstructor{
    
public:
    
    GradeBookConstructor(string name){
        setCourseName(name);
    }
    
    void setCourseName(string name){
        courseName = name;
    }
    
    string getCourseName(){
        return courseName;
    }
    
    void displayMessage(){
        cout<<"course  name: "<< getCourseName() <<endl;
    }
    
    //定义一个有参成员函数
    void displayMessageWithParms(string courseName){
        cout<<"grade book"<< courseName <<endl;
    }
    
private:
    string courseName;
};


void funcTestGradeBookConstructor(){
    GradeBookConstructor myGradeBookConstructor1("Constructor");
    GradeBookConstructor myGradeBookConstructor2("构造函数");
    
    myGradeBookConstructor1.displayMessage();
    myGradeBookConstructor2.displayMessage();
}

输出

course  name: Constructor
course  name: 构造函数
Program ended with exit code: 0

demo链接🔗https://github.com/samtake/C-review
end;

上一篇 下一篇

猜你喜欢

热点阅读