首页 > 其他分享 >软件设计实验7

软件设计实验7

时间:2022-10-11 19:55:39浏览次数:43  
标签:instance no 软件设计 学号 StudentNo static 实验

实验7:单例模式

[实验任务一]:学号的单一 

仿照课堂的身份证的例子,实现每个同学仅有一个学号这一问题。

直接放源码:

#include<iostream>
#include<string>
using namespace std;
//单例角色——StudentNo类
class StudentNo{
private:
    static StudentNo* instance;
    string no;
    StudentNo(){}
    void setStudentNo(string n){
        no=n;
    }
public:
    static StudentNo* getInstance(){
        if(instance==NULL){
            cout<<"第一次注册,分配新的学号"<<endl;
            instance=new StudentNo();
            instance->setStudentNo("20203972");
        }else{
            cout<<"重复注册,获取旧的学号"<<endl;
        }
        return instance;
    }
    string getStudentNo(){
        return no;
    }
};
StudentNo* StudentNo::instance=NULL;
int main(){
    StudentNo *x,*y;
    x=StudentNo::getInstance();
    y=StudentNo::getInstance();
    cout<<"学号是否一致";
    if(x==y){
        cout<<"true"<<endl;
    }

    string a,b;
    a=x->getStudentNo();
    b=y->getStudentNo();
    cout<<"第一次学号是"<<a<<endl;
    cout<<"第二次学号是"<<b<<endl;
    cout<<"内容是否相等";
    if(strcmp(a.c_str(),b.c_str())==0){
        cout<<"true"<<endl;
    }
    cout<<"是否是相同对象";
    if(a==b){
        cout<<"true"<<endl;
    }
    return 0;
}

  

标签:instance,no,软件设计,学号,StudentNo,static,实验
From: https://www.cnblogs.com/lyf3701/p/16782174.html

相关文章

  • 实验5:开源控制器实践——POX
    (一)基本要求1、搭建下图所示SDN拓扑,协议使用OpenFlow1.0,控制器使用部署于本地的POX(默认监听6633端口)2、阅读Hub模块代码,使用tcpdump验证Hub模块;h1pingh3h1ping......
  • 实验5:开源控制器实践——POX
    一、实验目的能够理解POX控制器的工作原理;通过验证POX的forwarding.hub和forwarding.l2_learning模块,初步掌握POX控制器的使用方法;能够运用POX控制器编写自定义网络......
  • 实验4:开源控制器实践——OpenDaylight
    实验4:开源控制器实践——OpenDaylight一、实验目的能够独立完成OpenDaylight控制器的安装配置;能够使用Postman工具调用OpenDaylightAPI接口下发流表。二、实验环境......
  • Java设计模式之 装饰模式实验报告书
    Java设计模式之装饰模式实验报告书姓名:班级:学号:实验三:装饰模式的应用一、实验目的熟练使用JAVA实现装饰模式,理解设计模式的模式动机,掌握模式结构,学习如何使用代码实现......
  • 中级软件设计师软考备考资源
    软考资源在百度网盘上我已经把上面的资料放到我的微信公众号上去了,在微信公众号回复“软考”就可以了:学习微站(studysth)......
  • 实验5:开源控制器实践——POX
    一、实验目的能够理解POX控制器的工作原理;通过验证POX的forwarding.hub和forwarding.l2_learning模块,初步掌握POX控制器的使用方法;能够运用POX控制器编写自定义网络......
  • 实验5:开源控制器实践——POX
    一、基本要求:阅读Hub模块代码,使用tcpdump验证Hub模块h1pingh2、h2和h3的tcpdump抓包结果截图如下L2_Learning代码流程图如下使用tcpdump验证Switch模块h1pin......
  • 正点原子->实验8 定时器中断实验
    定时器初始化:1.定时器初始化2.中断初始化voidTIM3_Int_Init(u16arr,u16psc){TIM_TimeBaseInitTypeDefTIM_TimeBaseStructure;NVIC_InitTypeDefNVIC_Ini......
  • 实验5:开源控制器实践——POX
    实验5:开源控制器实践——POX一、实验目的能够理解POX控制器的工作原理;通过验证POX的forwarding.hub和forwarding.l2_learning模块,初步掌握POX控制器的使用方法;能够......
  • 实验5:开源控制器实践——POX
    一、实验目的1.能够理解POX控制器的工作原理;2.通过验证POX的forwarding.hub和forwarding.l2_learning模块,初步掌握POX控制器的使用方法;3.能够运用POX控制器编写自定......