2010-11-30高度なプログラミング
Absolute C++ 6th ed./Savitch Chap.11 Programming Project.4
もんだいぎじゅつ
筆者は本稿における管理者とユーザログイン情報管理システムの実現を要求する.
せっけいけいかく
本明細書によっては、対応するメンバー関数を実装するために異なるクラスを作成し、ユーザーと管理者が対応するIDとパスワードを入力したときに実行するプライマリドメインを設計します.
データ処理プロセス
本明細書のセキュリティ・ヘッダーを、ユーザーと管理者ヘッダーにそれぞれ宣言して、セキュリティを確保します.cppに発表する.その後のセキュリティクラスのメンバー関数の戻り値に基づいて、各クラスのLogin関数の親として入力し、結果値に基づいてログインします.
実行結果と分析
もんだいぎじゅつ
筆者は本稿における管理者とユーザログイン情報管理システムの実現を要求する.
せっけいけいかく
本明細書によっては、対応するメンバー関数を実装するために異なるクラスを作成し、ユーザーと管理者が対応するIDとパスワードを入力したときに実行するプライマリドメインを設計します.
データ処理プロセス
本明細書のセキュリティ・ヘッダーを、ユーザーと管理者ヘッダーにそれぞれ宣言して、セキュリティを確保します.cppに発表する.その後のセキュリティクラスのメンバー関数の戻り値に基づいて、各クラスのLogin関数の親として入力し、結果値に基づいてログインします.
実行結果と分析
<Security.h>
#pragma once
#include <iostream>
#include <string>
using namespace std;
class Security {
public:
static int validate(string username, string password);
};
int Security::validate(string username, string password) {
if ((username == "abbott") && (password == "monday")) return 1;
if ((username == "costello") && (password == "tuesday")) return 2;
return 0;
}
<Administrator.h>
#pragma once
#include "Security.h"
class Administrator {
public:
bool Login(int num);
};
bool Administrator::Login(int num) {
if (num == 2) return true;
else return false;
}
<User.h>
#pragma once
#include "Security.h"
class User {
public:
bool Login(int num);
};
bool User::Login(int num) {
if (num == 1) return true;
else return false;
}
<Security.cpp>
#include "Administrator.h"
#include "User.h"
int main() {
Security a;
Administrator b;
User c;
if (c.Login(a.validate("abbott", "monday")) == 1) cout << "Good morning, user" << endl;
if (b.Login(a.validate("costello", "tuesday")) == 1) cout << "Good morning, admin" << endl;
return 0;
}
Reference
この問題について(2010-11-30高度なプログラミング), 我々は、より多くの情報をここで見つけました https://velog.io/@hyeonu_chun/2020-11-30-고급프로그래밍テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol