E—mail课设代码

更新时间:2024-03-25 04:07:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

#include #include #include

using namespace std;

//Email的?消?息¢类え? class Message { public: Message();

Message(string r, string s);

void append(string t); //消?息¢整?理え?(辍?连?接ó)? void print() const; //显?示?发ぁ?给?谁- private:

string recipient; string sender; string text; };

Message::Message() { }

Message::Message(string r, string s) {

recipient = r; sender = s; }

void Message::append(string t) {

text = text + t + \; }

void Message::print() const {

cout << \发件人?: \ << sender << \ << \收件人?: \ << recipient << \ << text; }

class Mailbox {

public:

Mailbox(string u);

void add_message(Message m); void del_message(int del); Message get_message(int i) const; int count_messages() const; string get_user() const; private:

vector messages; string user; };

Mailbox::Mailbox(string u) {

user = u; }

string Mailbox::get_user() const {

return user; }

//在ú收?件t下?,?{

messages.push_back(m); }

//在ú收?件t下?,?删?除y信?件t void Mailbox::del_message(int del) { }

Message Mailbox::get_message(int message_num) const {

return messages[message_num]; }

int Mailbox::count_messages() const {

return messages.size(); }

std::vector::iterator it = messages.begin()+del; messages.erase(it);

?加ó信?件t

void Mailbox::add_message(Message m)

//Email系μ统?主÷类え? class MailSystem { public:

MailSystem();

void login(string username, string userpass); //登录功能 void add_user(string username); //添加用户名 void add_pass(string userpass);//添加用户密码 void menu(); //菜单蹋栏 void view();//界面 void send();//发送 void dele();//删除 private: int current;

vector mailboxes; //列表括容器 vector mailboxes1; //列表括容器 };

MailSystem::MailSystem() {

current = -1; }

//登?录?功|能ü

void MailSystem::login(string username, string userpass) {

for (int i = 0; i < mailboxes.size(); i++)

if (mailboxes[i].get_user() == username && mailboxes1[i].get_user() == userpass) {

current = i; menu(); return; }

current = -1; }

void MailSystem::menu() {

while (true) {

cout << \欢?迎?使?用?E-mail消?息¢系μ统?\\n\;

cout << \输?入?'v'

?件t;\\n\;

cout << \输?入's'发送邮件t;\\n\; cout << \输入’d'删除邮件t;\\n\; cout << \输?入?'q'重新登录.\\n\; cout << \请输入?: \;

string command; cin>>command;

if (command == \) view(); else if (command == \) send();

else if (command == \) dele(); else if (command == \) return; } }

//查看邮件

void MailSystem::view() {

int number=1;

for (int i = 0; i < mailboxes[current].count_messages(); i++) { }

void MailSystem::dele() { }

//将用户名添加到列表括容器中

void MailSystem::add_user(string username) {

mailboxes.push_back(Mailbox(username)); //用于在后面添加一项 } //

?加ó到?

?容器中D

mailboxes[current].del_message(del); int del;

cout<<\请选择删除第台几封邮件t:\; cin>>del; del = del-1;

cout<<\第台<

mailboxes[current].get_message(i).print();

}

void MailSystem::add_pass(string userpass) { }

void MailSystem::send() {

if (current == -1) return; cout << \请?输入收件t人?: \; string r; cin>>r;

//输入Email内容

Message m(r, mailboxes[current].get_user()); bool more = true; string t;

cout << \输?入消息行D,输入'.'结束:\\n\; while (more) { cin>>t; if (t == \) more = false; else

m.append(t); }

//发给收件人,即之前添加的用户

for (int i = 0; i < mailboxes.size(); i++) if (mailboxes[i].get_user() == r) {

mailboxes[i].add_message(m);

cout << \发送成功.\\n\;

return; }

current = -1;

cout << \没有瓺此收件t人.\\n\; }

int main() {

MailSystem system;

bool more = true;

mailboxes1.push_back(Mailbox(userpass)); //用于在后面添加一项

while (more) {

cout << \添加用户, 输入'q'退出: \\n\;

cout << \用户名: \; string name;

cin>>name; //用于读取一行字符换到换行符

cout << \密码: \; string pass;

cin>> pass; //用于读取一行字符直到换行符

if (name != \)

more = true; while (more) {

cout << \用户登录, 输入'q'退出:\\n\;

cout << \用户名:阰\; string name; cin>>name;

cout << \密码: \; string pass; cin>>pass;

if (name != \) }

return 0; }

system.login(name, pass); if (name == \)

break; { }

system.add_user(name); system.add_pass(pass);

break;

if (name == \)

}

类似这样,

Message类 类的功能 成员函数 Message ~Message append print 成员变量 recipient sender text

外围框架 构造函数 析构函数

消息整理(辍连接) 显示发给谁 接受者 发送者 发送文本

Mailbox类 类的功能 成员函数 Mailbox ~Mailbox add_message del_message 成员变量 messages user

外围框架 构造函数 析构函数

在收件下,添加信件 在收件下,删除信件 发送消息 使用者信息

Email系统主类 class MailSystem 类的功能 成员函数 MailSystem ~MailSystem login add_user add_pass menu view send dele 成员变量 current mailboxes mailboxes1

外围框架 构造函数 析构函数 登录功能 添加用户名 添加用户密码 菜单蹋栏 界面 发送 删除

当前状态变量 列表括容器 列表括容器

本文来源:https://www.bwwdw.com/article/yk38.html

Top