我在对话框里面用char[100]获取了一个字符串,然后向view类里面发送了一个消息。
在view里面用了强制转换
char* TEXNAME = new char(100);
TEXNAME =(char*) wParam;
现在出现了一个问题。以下是一个正确的,一个是错误的
1.正确
#define TEXNAME1 ".\\墙纸成品\\条纹1.rgb"
pfLoadTexFile( tex, TEXNAME );
2.错误
char* TEXNAME = new char(100);
TEXNAME =(char*) wParam;
pfLoadTexFile( tex, TEXNAME );//编译通过,但不能进行pfLoadTexFile要求的操作。问一下大家,有什么好办法解决嘛....
在view里面用了强制转换
char* TEXNAME = new char(100);
TEXNAME =(char*) wParam;
现在出现了一个问题。以下是一个正确的,一个是错误的
1.正确
#define TEXNAME1 ".\\墙纸成品\\条纹1.rgb"
pfLoadTexFile( tex, TEXNAME );
2.错误
char* TEXNAME = new char(100);
TEXNAME =(char*) wParam;
pfLoadTexFile( tex, TEXNAME );//编译通过,但不能进行pfLoadTexFile要求的操作。问一下大家,有什么好办法解决嘛....
TEXNAME =(char*) wParam;
==这个代码是太典型的内存泄漏了。TEXNAME即将指向wParam传来的数据地址,那你还new char(100)干吗呢?而且,即使你要new,也是new char[100]啊,你连字符数组怎么定义都搞错了......
pfLoadTexFile( tex, TEXNAME );就行了
TEXNAME =(char*) wParam;
=========
你分配的new char[100]丢失了。
这时TEXNAME 是什么内容