marinfo 님이 쓰신 글 :
: 안녕하십니까.
:
: format 문장에서 array 변수를 직접 넣으려니 안되네요. 무슨 방법이 없을지.
: 대략 다음과 같은 상황입니다.
:
: var
: va : array of string;
: sa: array [0..1] of string;
: formatstr, finalstr: string;
:
: begin
: formatstr := '여기 첫번째 내용 %s 가 있고, 다음 두 번째 항목 %s가 있습니다';
:
: setlength(va, 2);
: va[0] := 'Item 1';
: va[1] := 'Item 2';
: finalstr := format(formatstr, va);
:
: sa[0] := 'Item 1';
: sa[1] := 'Item 2';
: finalstr := format (formatstr, sa);
: end;
:
:
: 위처럼, variable array 와 static array 둘 다 사용해 보아도, 모두 incompatible type 이라며
: compiler error 가 납니다. 원래 안 되는 것인지, 아니면 제가 뭘 잘못 쓴 건지? Argument 개수가
: 수시로 변할 수 있어, variable array 사용이 꼭 필요한 상황입니다. 어떤 방법이 있을까요?
:
: 아시는 분 도움 부탁드립니다.
2번째는 안되는것같고..
1번째는
finalstr := format(formatstr, va); -->finalstr := format(formatstr, [va]);
이렇게 하시면 될것같습니다. 2007에서 테스트 했습니다.
|