学习笔记:MVC模式
模式简介
:代表Model-View-Controller(模型-视图-控制器)模式。这种模式用于程序的分层开发。
为什么用
:有条理的写程序,减少耦合。
怎么样用
:把功能分为数据,视图,操作三个类来写。
注意事项
:尽量采用这种写法。
实际举例
:人物信息的展示。
#include <iostream>
using namespace std;
class PersonModel{
private:
string name;
string lv;
string pro;
string hp;
string mp;
public:
PersonModel() {
name = "无";
lv = "0";
pro = "无";
hp = "100";
mp = "100";
}
void setName(string name) {
this->name = name;
}
string getName() {
return this->name;
}
};
class PersonView {
public:
void showAttr(PersonModel* personModel) {
cout << "name: " << personModel->getName()<<"\n";
cout << "other information is loading......\n";
}
};
class PersonController {
private:
PersonModel* personModel;
PersonView* personView;
public:
PersonController(PersonModel* personModel,PersonView* personView) {
this->personModel = personModel;
this->personView = personView;
}
void setName(string name) {
personModel->setName(name);
}
string getName() {
return personModel->getName();
}
void showAttr() {
personView->showAttr(personModel);
}
};
int main() {
PersonModel* personModel = new PersonModel();
PersonView* personView = new PersonView();
PersonController* personController = new PersonController(personModel, personView);
personController->showAttr();
return 0;
}
|