MFC线程中访问CArray成员索引值?
MFC线程中访问CArray成员索引值求助??
CArray<char*,char*> m_uName;
CArray<SOCKET,SOCKET> m_uSock;
m_uName :里面有四个值:100 200 300 400
线程中:
int len=m_uName.GetSize();
CString strArray;
这里是转发:
for(int i=0;i<len;i++)
{
if(StrUser==strArray) //StrUser 要转发的名字。
{
strArray.Foramt("%s",m_uName.GetAt(i));
send(m_uSock.GetAt(i),fsBuf,0,512,0); //m_uSock.GetAt(i) 是对应的套接字,问题存在发送序号总错。
break;
}
}
为了验证为在一个MssageBox 显示结果:
m_uName 的值:100 200 300 100
百思不得其解。。。。。。。。。。。。。。为什么?????我并没有修改m_uName中的值,怎么会无故改变?
------解决方案--------------------
send怎么会有五个参数?
应该是send(m_uSock.GetAt(i),fsBuf,512,0);
你在线程中
这样打印,看会不会对,程序不会乱跑,他肯定是按你写的走的,你写的错了,也按你的旨意办事。
CString strItem;
int len=m_uName.GetSize();
for(int i = 0; i< len; i++)
{
strItem.Format("%s",m_uName.GetAt(i));
AfxMessageBox(strItem);
}
CArray<char*,char*> m_uName;
CArray<SOCKET,SOCKET> m_uSock;
m_uName :里面有四个值:100 200 300 400
线程中:
int len=m_uName.GetSize();
CString strArray;
这里是转发:
for(int i=0;i<len;i++)
{
if(StrUser==strArray) //StrUser 要转发的名字。
{
strArray.Foramt("%s",m_uName.GetAt(i));
send(m_uSock.GetAt(i),fsBuf,0,512,0); //m_uSock.GetAt(i) 是对应的套接字,问题存在发送序号总错。
break;
}
}
为了验证为在一个MssageBox 显示结果:
m_uName 的值:100 200 300 100
百思不得其解。。。。。。。。。。。。。。为什么?????我并没有修改m_uName中的值,怎么会无故改变?
------解决方案--------------------
send怎么会有五个参数?
应该是send(m_uSock.GetAt(i),fsBuf,512,0);
你在线程中
这样打印,看会不会对,程序不会乱跑,他肯定是按你写的走的,你写的错了,也按你的旨意办事。
CString strItem;
int len=m_uName.GetSize();
for(int i = 0; i< len; i++)
{
strItem.Format("%s",m_uName.GetAt(i));
AfxMessageBox(strItem);
}