变量定义如下:type TItems = array of string[MaxItemCharacterLen];
var c_set:TList;........var pure_item:TItems;
..........
mySet:=candidate.myList.Items[i]; //mySet类型你们可以不管setlength(pure_item,mySet.getLen);pure_item:=myset.getItem;//在这儿我把pure_item的值也show出来了,一切正常c_Set.Add(pure_item);//在这儿调试的时候可以看见pure_item的值为项添加的值,添加后可以看见c_Set.count值已经累加了的.............下面有如下函数把c_Set值变为字符串:function listtostr(myList:TList):string;var temp:TItems;i,j:integer;re:string;beginre:='';for i:=0 to mylist.Count-1 dobegintemp:=myList[i];for j:=low(temp) to high(temp) dore:=re+temp[j]; //这儿temp[j]的值皆为空,为什么re:=re+'|';end;result:=re;end;..........................在另一个函数中有如下调用:showMessage(listtostr(c_set));......................
可是show出来的类容是 | | | | | |....没有具体内容,请问why?
var c_set:TList;........var pure_item:TItems;
..........
mySet:=candidate.myList.Items[i]; //mySet类型你们可以不管setlength(pure_item,mySet.getLen);pure_item:=myset.getItem;//在这儿我把pure_item的值也show出来了,一切正常c_Set.Add(pure_item);//在这儿调试的时候可以看见pure_item的值为项添加的值,添加后可以看见c_Set.count值已经累加了的.............下面有如下函数把c_Set值变为字符串:function listtostr(myList:TList):string;var temp:TItems;i,j:integer;re:string;beginre:='';for i:=0 to mylist.Count-1 dobegintemp:=myList[i];for j:=low(temp) to high(temp) dore:=re+temp[j]; //这儿temp[j]的值皆为空,为什么re:=re+'|';end;result:=re;end;..........................在另一个函数中有如下调用:showMessage(listtostr(c_set));......................
可是show出来的类容是 | | | | | |....没有具体内容,请问why?
我就很感激了,up有分~谢谢~
其实你可以考考虑不用tlist,而用
myList:Array of TItems就行了
type
PTItems=^TItems;
.....
var
pure_item:PTItems;
......
begin
....
new(pure_item);
.....
c_Set.Add(pure_item);