框架设计MVC

重点:

1.用户通过界面操作,传输到control,control可以直接去处理View,或者通过模型处理业务逻辑,然后将数据传输给view。

2.control包含了model和view成员。

链接:

MVC框架详解_mvc架构-CSDN博客

MVC架构图如下:

#include <iostream>
#include <vector>

using namespace std;

//Model数据处理器
class Model
{
public:
	void Increace()
	{
		count++;
	}
	void Decreace()
	{
		count--;
	}
	int GetCount()
	{
		return count;
	}
	void SetCount(int num)
	{
		count=num;
	}
private:
	int count{10};
};

//view显示器
class View
{
public:
	void Update(int data)
	{
		cout << data << endl;
	}
};

//Controller控制器
class Controller
{
public:
	Controller(shared_ptr<Model> model, shared_ptr<View> view) :m_model(model), m_view(view)
	{
	}

	void HandleIncrementPressed()
	{
		m_model->Increace();
		m_view->Update(m_model->GetCount());
	}
	void HandleDecrementPressed()
	{
		m_model->Decreace();
		m_view->Update(m_model->GetCount());
	}
private:
	shared_ptr<Model> m_model;
	shared_ptr<View> m_view;
};

int main()
{
	shared_ptr<Model> model= make_shared<Model>();
	shared_ptr<View> view = make_shared<View>();
	shared_ptr<Controller> cont = make_shared<Controller>(model, view);
	cont->HandleDecrementPressed();
	cont->HandleIncrementPressed();
	return 0;

}

相关推荐

  1. MVC设计模式

    2024-07-17 18:02:04       55 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-17 18:02:04       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-17 18:02:04       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-17 18:02:04       57 阅读
  4. Python语言-面向对象

    2024-07-17 18:02:04       68 阅读

热门阅读

  1. 软件测试bug周期

    2024-07-17 18:02:04       23 阅读
  2. #if defined(WEBRTC_USE) webrtc.a的宏机制

    2024-07-17 18:02:04       17 阅读
  3. bug【创作模板】

    2024-07-17 18:02:04       19 阅读
  4. 计算机视觉6 计算机视觉---风格迁移

    2024-07-17 18:02:04       21 阅读
  5. Python 可变参数 *args 和 **kwargs 的用法

    2024-07-17 18:02:04       17 阅读
  6. 加载中的css动画

    2024-07-17 18:02:04       22 阅读
  7. 【git】git commit与change-id的搭配使用技巧

    2024-07-17 18:02:04       19 阅读
  8. Python深度学习

    2024-07-17 18:02:04       19 阅读
  9. 多人猜数游戏

    2024-07-17 18:02:04       26 阅读
  10. 终止Promise的执行

    2024-07-17 18:02:04       19 阅读