局域网聊天程序设计

局域网聊天程序设计

ID:40833037

大小:321.60 KB

页数:35页

时间:2019-08-08

局域网聊天程序设计_第1页
局域网聊天程序设计_第2页
局域网聊天程序设计_第3页
局域网聊天程序设计_第4页
局域网聊天程序设计_第5页
资源描述:

《局域网聊天程序设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、青岛理工大学C++面向对象课程设计报告院(系):计算机工程学院专业:软件工程学生姓名:管巨伟班级软件132学号:201307227题目:局域网聊天程序设计____起迄日期:_2015.6.29~2015.7.10设计地点:计算机学院机房指导教师:李传斌杨鑫完成日期:2015年7月10日任务书一、课程设计目的与要求1.课程设计目的面向对象程序设计作为一门软件设计的课程,具有极强的实践性,必须使学生具备灵活应用理论知识的能力及面向对象程序设计技能。所以在《C++面向对象程序设计》课程学习完成后,安排课程设计教学环节。通过课程设计,使学生实际掌握面向对象的程序设计方法,了解C

2、++面向对象的设计方法与技巧,有效地、深刻地理解课程内容,体会理论、方法和设计原则;培养学生分析实际问题和解决问题的能力,使学生具备使用面向对象程序设计开发工具设计实际系统的能力。2.课程设计要求结构化程序设计使用的是功能抽象,面向对象程序设计不仅能进行功能抽象,而且能进行数据抽象。“对象”实际上是功能抽象和数据抽象的统一。C++语言的“对象”是“类”的实例,程序设计的基础是设计类,所以类的有关概念都是重点,尤其要抓住抽象、封装、继承和多态性等要素。面向对象程序设计的核心是类层次的设计。而具体类的设计的重点是如何选择数据成员和成员函数。根据数据成员和成员函数的特点,结合具

3、体问题设计合适的类。成员函数设计中的难点是选择函数类型及其参数传递方式。开发系统离不开设计平台,学生应在掌握面向对象程序设计基础上,熟悉并能熟练使用面向对象程序设计开发平台,结合相关理论知识,进行相应系统开发。二、课程设计内容课程设计题目及要求局域网聊天程序设计:服务端设置,通过对客户端多个线程的监听,显示客户端的上线、下线,与客户端进行信息交流。开启服务器是通过新建socket,绑定端口号,监听线程,等待客户端连入。创建动态数组,完成客户端的连入,存储客户端信息。结束线程,完成对资源释放。33课程设计报告内容一、需求分析1.选做此课题或项的目的开发此聊天程序旨在供个人聊

4、天交流使用,进行多人并发聊天,交流思想见解,让使用者充分体验网络即时工具的方便快捷。同时了解现今正在使用的交流软件的基础功能,了解网络编程的基础思想,了解线程的使用,多个任务同时进行的原理,拓展自己的视野,提升自己的编码能力。也想通过该课题了解MFC的编码过程,学习收获到客户端、服务端都包含的交互式界面的实现及应用。2.程序所实现的功能客户端:1、获取输入的IP地址,2、获取通信的端口号,3、获取从服务器发来的信息,4、给服务器发送用户自定义的数据。服务端:1、获取客户端IP地址,2、获取通信的端口号,3、记录客户端连入的台数,4、向所有连入客户端发送消息,5、接收客户端

5、发送过来的信息其他:进行网络的设置、关闭运行的程序、发送消息、系统托盘、系统托盘下对程序的显示和退出操作。二、内容设计主聊天界面ChatRoomDlg1.根据所选题目,给出模块图关闭程序窗口消息函数OnBnClickedCancel()更多功能消息函数OnBnClickedOther()网络设置消息函数OnBnClickedNetset()系统托盘消息函数OnMenuTrayinco()客户端打开消息函数OnBnClickedStartClient()服务器打开消息函数OnBnClickedStartServer()服务端设置OnBnClickedRadioServer(

6、)客户端设置OnBnClickedRadioClient()发送消息消息函数SendClientsMsg()接收消息CreatThread()图1模块图332.画出主程序及其主要模块的流程图开始Y网络设置N服务端或客户端设置Y更多功能系统托盘N发送消息关闭窗口结束图2主程序流程图33开始网络设置YN客户端设置输入IP地址和端口号绑定端口号开启服务端端开启客户端N服务端开启Y发送或接受消息关闭线程、关闭窗口结束图3网络设置及消息发送流程图33开始新建socketNY创建成功绑定端口NY绑定成功监听端口NY监听成功启动成功,接收客户端结束图4服务器启动流程图33开始新建soc

7、ketNY创建成功NY端口号正确连接服务器NY连接成功进行数据交流结束图5客户端连接流程图333.编写程序关键代码客户端的线程函数:#include"stdafx.h"#include"ChatRoomDlg.h"#include"Inc.h"DWORDWINAPIConnectThreadFunc(LPVOIDpParam){CChatRoomDlg*pChatRoom=(CChatRoomDlg*)pParam;//创建指向窗口的指针ASSERT(pChatRoom!=NULL);//判断线程是否为创建成功pChatRoo

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。