首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

资源访问出错的有关问题

2012-05-31 
资源访问出错的问题资源文件里面有 R1, R2, R3标识的资源有个类 TxxTxx有个private成员res:PAnsiChar(资源

资源访问出错的问题
资源文件里面有 R1, R2, R3标识的资源

有个类 Txx Txx 有个private成员res:PAnsiChar(资源标识),类里面有个过程Pxx会通过res访问这个资源

我分别创建3个对象 o1,o2,o3 然后把res的值分别为'R1','R2','R3' 这样程序不会出错

但我用循环创建,如下:
  for i:=0 to HIGH(objs) do
  begin
  objs[i]:= Txx.Create(self);
  objs[i].res:=pChar('R'+inttostr(i+1));  
  end;
objs是Txx类型数组,下标是0-2, 访问Pxx函数时,提示"找不到资源........."

"......"每次的内容不一样 好像访问到了别的地方的值

[解决办法]
objs[i].res:=pChar('R'+inttostr(i+1));
改成:
GetMem(objs[i].res, 256);
StrCopy(objs[i].res, pChar('R'+inttostr(i+1)));

最后在objs[i]释放之前还要注意使用FreeMem来释放objs[i].res

热点排行