함수에서 인자를 받는건데요.
procedure aRor(ar: array of integer;a: integer);
begin
....
① if a in ar then ----> 이렇게 하면 에러가 나구요
② if a in [4,6] then -----> 이렇게 하면 에러가 안나요.
end;
함수 호출할때는
aRor([4,6],4); 이렇게 할건데,,,
① 방식으로 사용해야하는데, 이상하게 함수안에서 ②처럼 쓰면 에러없는데
① 처럼쓰면 에러가 나는군요.
에러메시지는 Operator not applicable to this operand type 이군요.
두개가 다른데요...
1번은 in은 집합연산자인데 ar은 집합이 아니라 동적배열이죠... 2번의 [4,6]은 집합이니까 에러가 안나구요...
aRor([4,6],4); <<= 여기에서의 [4, 6]은 집합이 아니라 Open Array Parameter라고 동적배열입니다. 당연히 in은 쓰지 못하죠...
함수선언부에서 ar: array of Integer라고 되어 있네요...
^^ 항상 즐코하세요...