资源简介
课程设计题目:模拟即时通信系统实现
一、题目描述
基于社交的即时通信是腾*公司的主要业务,先后有QQ、微信、微博等服务,可能还将继续推出微商、微唱、微走、微笑等产品。这些软件既可以独立提供服务,又互相辉映关联。腾*公司希望对各系统进行整合形成统一的立体社交软件平台。现请完成该平台的设计并实现。要求如下:
1、用户基本信息:
号码ID,昵称,出生时间,T龄(号码申请时间)、所在地、好友列表、群列表。
微博与QQ共享ID,微信采用独立ID,但是可以与QQ号码绑定对应。其他微X产品也分为这两种情况。
2、好友管理
(1)实现各功能好友信息的添加、修改、删除、查询的功能。
(2)可以查询微X之间各自共同好友。如微信可以添加QQ推荐好友。
3、群管理
(1)设定每个微X功能已有1001、1002、1003、1004、1005、1006等群号。
(2)加入群、退出群、挨T、查询群成员等。
代码片段和文件信息
#include
#include“chat.h“
#include
#include “stdafx.h“
#include
#include
#include
#include
#include“tools.h“
using namespace std;
//QQTools_CHC QQTools;
QQ_CHC::QQ_CHC()
{
for (int i = 0; i<1000000; i++) //加强QQ号生成随机性
{
srand(time(0));
}
int p = rand()*rand();
char temp[128];
itoa(p temp 10);
ID = string(temp);
/*ID = rand()*rand();*/
cout << “你的QQ号为:“ << ID < cout << “请输入你的密码“ << endl;
string PassWordAgin;
cin >> PassWord;
cout << “请再次确认你的密码“ << endl;
cin >> PassWordAgin;
while (1)
{
if (PassWord == PassWordAgin)
{
break;
}
else
{
cout << “你的两次密码不相符,请重新输入“ << endl;
cout << “请输入你的密码“ << endl;
cin >> PassWord;
cout << “请再次确认你的密码“ << endl;
cin >> PassWordAgin;
continue;
}
}
ApplyDate.ShowDate();
/*Age = 0;*/
Age = ApplyDate.ReturnDate();
cout << “请输入你的QQ名字:“ << endl;
cin >> Name;
cout << “请输入你所在的地区“ << endl;
cin >> Area;
cout << “请选择你的性别“ << endl;
cout << “1.男性“ << endl;
cout << “2.女性“ << endl;
int select;
cin >> select;
switch (select)
{
case 1:
Sex = Man.SexFlag;
break;
default:
Sex = WoMan.SexFlag;
break;
}
cout << “你的性别:“ << Sex << endl;
cout << “输入你的个性签名“ << endl;
cin >> Autograph;
cout << “QQ号申请成功“ << endl;
cout << “你的QQ号为:“ << ID << endl;
cout << “你的QQ密码为:“ << PassWord << endl;
cout << “请妥善保存帐号和密码“ << endl;
string QQ = “QQ\\“ + ID;
CreateDirectory(QQ.c_str() NULL);//每个QQ创建一个文件夹
}
QQ_CHC::QQ_CHC(string qqid string qage string qqpw string qqname string qqpv string ag)
{
ID = qqid;
Age = qage;
PassWord = qqpw;
Name = qqname;
Area = qqpv;
Autograph = ag;
FriendNumber = 0;
PartyNumber = 0;
}
QQ_CHC::~QQ_CHC()
{
for (int i = 0; i < size(FriendList); i++)
{
delete FriendList[i];
}
for (int i = 0; i < size(PartyList); i++)
{
delete PartyList[i];
}
}
void QQ_CHC::GetFriends()
{
ifstream file;
string qq = ID;
string txt = “.txt“;
string filename = “QQ\\“ + qq + “\\“ + qq + “Friendlist.txt“;
string id;
string name;
string remarks;
char c;
int line = 0;
int Myqq;
file.open(filename ios::app);
while (file.get(c))
{
if (c == ‘ ‘)
{
line++;
}
}
file.close();
/*for (int i = 0; i < size(QQ); i++)
{
if (QQ[i]->ReturnID() == QQid)
{
Myqq = i;
}
}*/
/*ChangeFriendsNumber(line);*/
FriendNumber = line;
file.open(filename ios::app);
for (int i = 0; i < line; i++)
{
file >> id;
file >> name;
file >> remarks;
FriendList.emplace_back(new QQFriends_CHC(name id remarks));
}
file.close();
}
void QQ_CHC::Getlinks()
{
fstream CheckFile;
fstream GetlinksFile;
string GetlinkFileName = “QQ\\“ + ID + “\\links.txt“;
CheckFile.open(GetlinkFileName ios::in);
if (!CheckFile)
{
CheckFile.close();
CheckFile.open(GetlinkFileName ios::out);
}
CheckFile.close();
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 722944 2018-06-20 10:50 Chat.exe
目录 0 2018-06-20 15:12 Chat源代码\
文件 45112 2018-06-19 21:42 Chat源代码\Chat.aps
文件 8095 2018-06-19 22:55 Chat源代码\chat.cpp
文件 5302 2018-06-19 22:55 Chat源代码\chat.h
文件 3352 2018-06-19 21:42 Chat源代码\Chat.rc
文件 6879 2018-06-19 21:42 Chat源代码\Chat.vcxproj
文件 2780 2018-06-19 21:42 Chat源代码\Chat.vcxproj.filters
文件 165 2018-05-09 08:29 Chat源代码\Chat.vcxproj.user
文件 964 2018-06-18 23:27 Chat源代码\Date.cpp
文件 490 2018-06-18 23:02 Chat源代码\Date.h
文件 23114 2018-06-19 22:37 Chat源代码\GreedySnake.cpp
文件 19397 2018-06-18 22:19 Chat源代码\GreedySnake.h
文件 470 2018-06-18 17:59 Chat源代码\Initsock.h
文件 2076 2018-06-20 09:02 Chat源代码\main.cpp
文件 95474 2018-06-20 10:50 Chat源代码\qqtools.cpp
文件 440 2018-06-19 21:18 Chat源代码\resource.h
文件 440 2018-06-19 21:20 Chat源代码\resource1.h
文件 440 2018-06-19 21:42 Chat源代码\resource2.h
文件 212 2018-05-09 20:55 Chat源代码\stdafx.cpp
文件 247 2018-06-18 17:59 Chat源代码\stdafx.h
文件 240 2018-05-11 20:13 Chat源代码\targetver.h
文件 6869 2018-06-19 23:18 Chat源代码\tools.h
文件 271 2018-05-30 08:12 Chat源代码\weibo.h
文件 3375 2018-06-20 09:07 Chat源代码\weibotools.cpp
文件 85781 2018-06-20 09:32 Chat源代码\weichattools.cpp
文件 69120 2018-05-18 23:00 Client.exe
目录 0 2018-06-20 15:13 Client源代码\
文件 2358 2018-05-09 20:51 Client源代码\Client.cpp
文件 8117 2018-05-09 20:30 Client源代码\Client.vcxproj
文件 1341 2018-05-09 20:30 Client源代码\Client.vcxproj.filters
............此处省略15个文件信息
- 上一篇:四路抢答器 c语言
- 下一篇:网络抓包winpcap版本C语言实现
相关资源
- 颜色识别形状识别STM103嵌入式代码
- c++ 邮件多附件群发
- c++ 透明代理(hookproxy)
- mfc 调用redis
- FTP客户端源码(c++)
- c++ 画图(14Qt-XPS)
- c++多边形交并差运算
- VC++基于OpenGL模拟的一个3维空间模型
- c++ 虚拟摄像头
- hook,捕获所有案件,查找所有窗口,
- C语言课设计算器
- c++ 简易贪吃蛇源码
- 高精度加法(c++代码)
- C++调用百度地图案例
- 北京化工大学计算方法(C/C++)讲义
- 基于VC++的SolidWorks二次开发SolidWorks
- c++ 模拟鼠标按键
- OFD编辑器
- Beginning C++17 From Novice to Professional
- C++ STL实现
- opencv手部轮廓识别以及轨迹识别
- 百度C++编码规范
- C++ sql2008 WebServer通讯.docx
- c++ 定时关机程序源码
- 基于VSCode和CMake实现C++开发
- c++语法查询工具
- c++ 账务系统源码
- GBT 28169-2011 嵌入式软件 C语言编码规范
- c++ 猜拳小游戏
- XUnZip Zip解压缩.rar
评论
共有 条评论