定义一个结构
struct tag_test
{
void *pParent;
CString str1;
CString str2;
tag_test()
{
str1 = "";
str2 = "";
pParent = NULL;
}
};//已存在对应的线程函数
static void ThreadTest(void);tag_test *pObj = new tag_test;
pObj->pParent = this;
PObj->str1 = "张三";
pObj->str2 = "李四";CWinTread *thread = AfxBeginThread(ThreadTest, pObj);
问题1:通过pObj把参数传给ThreadTest时,tag_test中定义的CString类型的str1和str2能否把值传入,因为经常看到在起线程的时候传入字符串都是 new一个新的char *进去,到里面使用完在释放
问题2:当在线程中处理完数据,要释放申请的tag_test *pObj的内存时,只需要delete []pObj就可以了吗,对结构中的CSting需要处理吗希望大侠们给予指点
struct tag_test
{
void *pParent;
CString str1;
CString str2;
tag_test()
{
str1 = "";
str2 = "";
pParent = NULL;
}
};//已存在对应的线程函数
static void ThreadTest(void);tag_test *pObj = new tag_test;
pObj->pParent = this;
PObj->str1 = "张三";
pObj->str2 = "李四";CWinTread *thread = AfxBeginThread(ThreadTest, pObj);
问题1:通过pObj把参数传给ThreadTest时,tag_test中定义的CString类型的str1和str2能否把值传入,因为经常看到在起线程的时候传入字符串都是 new一个新的char *进去,到里面使用完在释放
问题2:当在线程中处理完数据,要释放申请的tag_test *pObj的内存时,只需要delete []pObj就可以了吗,对结构中的CSting需要处理吗希望大侠们给予指点
解决方案 »
- 下面两段代码,那个效率高呢?
- 有没有大侠使用过CList链表类呀
- 基于消息的套接字,当客户端Send一次发送50M之后,服务端收到一次FD_READ还是多次FD_READ?
- *.rc 资源文件未找到,大家帮我看看怎么回事
- 那位高手会GetUserNameEx函数的用法啊?请教,我急啊!
- VC中判断是否为整数的函数?
- 为什么我用DRAWTEXT无法显示字符串
- 关于 PdhBrowseCounters 取得多个选择问题
- 请教各位:如何建立一个Windows CE的编程、调试、仿真环境,需要一些什么软件包?
- 延时程序怎么写阿?
- 我用GTK作介面 如果要访问IO文件,socket网络该用什么
- 在单文档模式下,如何改变菜单条的背景颜色,以及改变菜单的颜色
2. 不需要额外处理CString
如果是多个线程可能同时访问,就需要加锁
2、释放用delete pObj;,而不是delete [] pObj;