热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

C++实训二

只要不停地走,就有数不尽的风光前三天的C实训帮我们回顾了C语言的知识,然后接下来的一个大项目就是用VC的MFC来做一个超市管理系统,MFC

只要不停地走,就有数不尽的风光


前三天的C++实训帮我们回顾了C语言的知识,然后接下来的一个大项目就是用VC的MFC来做一个超市管理系统,MFC是一个在WINDOWS下制作图形化界面的软件,然后对于从未接触过这个东西的我们,既新奇又感到困惑,既然是来学习C++,为何来弄这些呢?虽然MFC使用C++来包装的,但是都是封装好的函数,为了认识这些函数我们得花很多时间。

接下来说一下这个超市管理系统的整个开发流程:

拿到项目课题,第一时间就是找百度,毕竟我们刚接触这个MFC,然后果然有一大片的资源让我们借鉴,于是乎照着网上的代码自己弄了几天,然后稍微加了些新功能,就算完成了。

我们的这个超市管理系统共分三个系统——用户登录系统,用户管理系统以及商品管理系统

一、登录系统

主要实现了用户登录功能

二、用户管理系统

则是用来对用户信息进行增删改查

三、商品管理系统

用于对商品的增删改查以及订单的详情和盈利金额的计算

总的来说,照着百度上的代码实现起来很简单,但是存在着几个问题:

1、对文件的读写
2、对几个控件的操作
3、系统界面的布局

在写第一个登录系统时,我们在一个登录界面集成了登录,注册,修改密码等功能,基本上用C语言读取文本文件的方式来实现,后来在实现文件读写的过程中遇到了很多曲折,发现很难,然后就百度到MFC的文件流以及数据流读取二进制或文本文件的方法,用起来得心应手,非常简单,最后只实现了一个登录界面,将用户的管理放在了后面的用户管理系统上来实现。

接下来是用户管理,对用户管理的增删改查主要是用列表框空间来实现,列表框在我们的系统中起着核心作用,因为我们对用户以及商品信息的管理主要是体现在列表框上,列表框可以时刻显示我们的信息,检测我们代码是否有bug,其中对文件的读写还是以结构体为单位,而对文件内容的修改全是采用覆盖的方式进行的,因为目前本人还未找到直接索引修改的方法。

最后就是商品管理,商品管理多了个订单管理,即进货售货,以及获得相关的盈利,然后我们用了一个单选框来控制我们是进货还是售货,实现过程与用户管理几乎一样。

最后是项目的总结,对于MFC这块,说实话虽然好玩,但是我并不是很感兴趣,所以针对这个超市管理系统的总结就到此为此,下篇文章讲一下我对这次实习的感受。


推荐阅读
  • 31.项目部署
    目录1一些概念1.1项目部署1.2WSGI1.3uWSGI1.4Nginx2安装环境与迁移项目2.1项目内容2.2项目配置2.2.1DEBUG2.2.2STAT ... [详细]
  • 本文介绍了在Windows系统上使用C语言命令行参数启动程序并传递参数的方法,包括接收参数程序的代码和bat文件的编写方法,同时给出了程序运行的结果。 ... [详细]
  • 树莓派语音控制的配置方法和步骤
    本文介绍了在树莓派上实现语音控制的配置方法和步骤。首先感谢博主Eoman的帮助,文章参考了他的内容。树莓派的配置需要通过sudo raspi-config进行,然后使用Eoman的控制方法,即安装wiringPi库并编写控制引脚的脚本。具体的安装步骤和脚本编写方法在文章中详细介绍。 ... [详细]
  • 恶意软件分析的最佳编程语言及其应用
    本文介绍了学习恶意软件分析和逆向工程领域时最适合的编程语言,并重点讨论了Python的优点。Python是一种解释型、多用途的语言,具有可读性高、可快速开发、易于学习的特点。作者分享了在本地恶意软件分析中使用Python的经验,包括快速复制恶意软件组件以更好地理解其工作。此外,作者还提到了Python的跨平台优势,使得在不同操作系统上运行代码变得更加方便。 ... [详细]
  • YOLOv7基于自己的数据集从零构建模型完整训练、推理计算超详细教程
    本文介绍了关于人工智能、神经网络和深度学习的知识点,并提供了YOLOv7基于自己的数据集从零构建模型完整训练、推理计算的详细教程。文章还提到了郑州最低生活保障的话题。对于从事目标检测任务的人来说,YOLO是一个熟悉的模型。文章还提到了yolov4和yolov6的相关内容,以及选择模型的优化思路。 ... [详细]
  • windows便签快捷键_用了windows十几年,没想到竟然这么好用!隐藏的功能你知道吗?
    本文介绍了使用windows操作系统时的一些隐藏功能,包括便签快捷键、截图功能等。同时探讨了windows和macOS操作系统之间的优劣比较,以及人们对于这两个系统的不同看法。 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • macOS10.12安装win10系统教程,实现双系统安装
    本文介绍了如何在macOS10.12系统上安装win10系统,实现双系统的安装。通过使用Boot Camp助理,选取win10系统镜像并分配系统容量,然后进行安装。安装完win10系统后,安装驱动并重启系统即可完成双系统的安装。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • 解决Cydia数据库错误:could not open file /var/lib/dpkg/status 的方法
    本文介绍了解决iOS系统中Cydia数据库错误的方法。通过使用苹果电脑上的Impactor工具和NewTerm软件,以及ifunbox工具和终端命令,可以解决该问题。具体步骤包括下载所需工具、连接手机到电脑、安装NewTerm、下载ifunbox并注册Dropbox账号、下载并解压lib.zip文件、将lib文件夹拖入Books文件夹中,并将lib文件夹拷贝到/var/目录下。以上方法适用于已经越狱且出现Cydia数据库错误的iPhone手机。 ... [详细]
  • 后台获取视图对应的字符串
    1.帮助类后台获取视图对应的字符串publicclassViewHelper{将View输出为字符串(注:不会执行对应的ac ... [详细]
  • HTML5网页模板怎么加百度统计?
    本文介绍了如何在HTML5网页模板中加入百度统计,并对模板文件、css样式表、js插件库等内容进行了说明。同时还解答了关于HTML5网页模板的使用方法、表单提交、域名和空间的问题,并介绍了如何使用Visual Studio 2010创建HTML5模板。此外,还提到了使用Jquery编写美好的HTML5前端框架模板的方法,以及制作企业HTML5网站模板和支持HTML5的CMS。 ... [详细]
author-avatar
我就是在刷粪_944
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有