C++ 类 enum型成员 赋值有关问题

C++ 类 enum型成员 赋值问题
我 一段代码 老是报错 郁闷死了,求解!!!!!!!
如下:
typedef enum _LINK_STATE
{
LINK_CONNECTED,
LINK_LOGGED_IN,
LINK_DISCONNECTED,
LINK_WAITING,
LINK_INTERNAL_ERROR,
LINK_UNAVAILABLE,
LINK_DELETE,
LINK_SHUTDOWN,
LINK_INIT,
LINK_LISTENNING
} LINK_STATE;

class CServer
{
public: 

string ServerName; //服务器名
string HostName; //主机名
string TargetIP; // 目标IP地址
ServerState m_ServerState; // 服务器状态
unsigned short m_ServerIndex; //服务器 序列
unsigned long m_totalCapacity; // 总容量
string m_authorization; //授权
string wwn;
//下面 这里 定义了 LINK_STATE 类型 然后在构造函数里赋值
LINK_STATE linkState;//服务器连接状态

public:
CServer * pNext;

public:
CServer()
{
pNext = NULL;
m_ServerIndex = 0;
m_ServerState = SERVER_OFFLINE;
HostName = "";
TargetIP = "";
ServerName = "";
m_totalCapacity = 0;
m_authorization = "";
wwn = "";
//下面 赋值 报错!
  linkState = LINK_DISCONNECTED;
}
};
错误为:
argument of type LINK_STATE is incompatible with parameter of type LINK_STATE;
我在其他处赋值 就会出现如下错误:
a value of type LINK_STATE cannot be assigned to an entity of type LINK_STATE

------解决方案--------------------
首先表示本人运行环境可以通过(VC6.0),我估计你这个问题可能和你编译器有关,或许是由于其他问题连锁引起??!
------解决方案--------------------
Visual Studio 2010下编译没有问题。调试可以看到linkState = 2
------解决方案--------------------
typedef enum _LINK_STATE
{
LINK_CONNECTED,
LINK_LOGGED_IN,
LINK_DISCONNECTED,
LINK_WAITING,
LINK_INTERNAL_ERROR,
LINK_UNAVAILABLE,
LINK_DELETE,
LINK_SHUTDOWN,
LINK_INIT,
LINK_LISTENNING
} LINK_STATE;

改成
enum LINK_STATE
{
LINK_CONNECTED,
LINK_LOGGED_IN,
LINK_DISCONNECTED,
LINK_WAITING,
LINK_INTERNAL_ERROR,
LINK_UNAVAILABLE,
LINK_DELETE,
LINK_SHUTDOWN,
LINK_INIT,
LINK_LISTENNING
} ;

试试看.


------解决方案--------------------
探讨

我的是vs2010啊 注销掉是可以的 还有很多时候我在vc6.0下 写的程序可以通过 但是到了vs2010上就通不过了

我的在写的时候也能看到 提示linkState = 2 但是就是报错啊
vs2010 我很蛋疼 以前用6.0比较多啊