读书人

求帮助~求修正异常

发布时间: 2012-05-09 12:13:59 作者: rapoo

求帮助~求修正错误
//client.h
#ifndef Client_H
#define Client_H

#include <iostream>
using namespace std;

class CLIENT
{
private:
static char ServerName;
static int ClientNum;
public:
CLIENT(){ClientNum++;};
~CLIENT(){ClientNum--;};
static int GetClientNum();
static void ChangServerName(char name);
static char GetServerName();
void showclient();
};

#endif

//client.cpp
#include "client.h"

int CLIENT::ClientNum = 0;

int CLIENT::GetClientNum()
{return ClientNum;}

void CLIENT::ChangServerName(char name)
{ServerName=name;}

char CLIENT::GetServerName()
{return ServerName;}

char CLIENT::ServerName= 'A';

void CLIENT::showclient()
{
cout << "服务器名称为:" << CLIENT::GetServerName()<< endl;
cout << "客户机数量为:" << CLIENT::GetClientNum()<< endl;
}

//lab.cpp
#include "client.h"

int main()
{
CLIENT::showclient();
CLIENT::ChangServerName('B');
CLIENT a;
CLIENT::showclient();
CLIENT b;
CLIENT::showclient();
b.~CLIENT();
CLIENT::showclient();
}



结果

服务器名:A

客户总数:0

服务器名:B

客户总数:1

服务器名:B

客户总数:2

服务器名:B

客户总数:1



[解决办法]
static void showclient(); //加一个 static
[解决办法]
因为非静态方法不能访问静态成员,也不能调用静态方法

读书人网 >C++

热点推荐