实现客户机(CLIENT)类。
定义字符型静态数据成员SeverName,保存其服务器名称;
整型静态数据成员ClientNum,记录已定义的客户数量;
定义静态函数ChangeSeverName()改变服务器名称。
在头文件client.h中定义类,
在文件client.cpp中实现,
在文件test.cpp中测试这个类,
观察相应的成员变量取值的变化情况。
- 代码如下:
- client.h
/*
*This file contains code for C++ 3rd experiment
*By LZH
*/
/*
*Warnning:A static variable in a class belongs to a class and does not belong to an Object!
*You cannot initialize a variable when an object is defined!
*Cannot initialize with constructors!
*Also, use the class name instead of the object.
*/
#ifndef CLIENT_H
// we're here only if CLIENT_H has not yet been defined
#define CLIENT_H
// Definition of Sales_item class and related functions goes here
#include <iostream>
#include <string>
using namespace std;
class CLIENT {
private:
static string ServerName; //Keep the Name of the Sever
static int ClientNum; //Keep the sum of the client
public:
CLIENT();
~CLIENT();
static void ChangeSeverName();
void show();
};
#endif
- client.cpp
#include"client.h"
CLIENT::CLIENT() {
cout<<"This is the Dafault Constructor!!";
ClientNum++;
}
void CLIENT:: ChangeSeverName(){
cout << "Please enter the name of new server:";
cin >> ServerName;
} //Change the Name of the server
void CLIENT::show(){
cout << "The Server's name:" << ServerName << endl;
cout << "The number of the Clients:" << ClientNum << endl;
}
CLIENT::~CLIENT() {
}
int CLIENT::ClientNum = 0;
string CLIENT::ServerName = "#@$#@$";
- test.cpp
#include"client.h"
int main() {
CLIENT asp;
asp.show();
asp.ChangeSeverName();
asp.show();
return 0;
}
-
测试截图
转载于:https://www.cnblogs.com/FlyerBird/p/8995964.html