파스칼 코드로 기본 인자값은
procedure Test(A: Integer = 10);
이렇게 해보니 되네요.
그런데 C++ 코드를 보니...
함수 내부에서 동적 생성해 주려면 Byte** 형태로 받아서 하셔야 할겁니다.
leo21c 님이 쓰신 글 :
: 사실 void*를 이용해서 타입에 따라 byte 데이터를 만들어 사용하려고 하는데
: 어떻게 하는지 몰라서 우선 이렇게 테스트 하고 있습니다.
: byte 동적배열을 만들어서 처리하려고 합니다.
:
: 인자(파라메터)로 아래와 같이 만들어서 사용하는데 무리가 없는지 모르겠습니다.
: 현재 C++ builder에서 작업을 하고 있습니다.
: 예전 소스가 파스칼이라 기존 작업을 예전 소스에 적용하고 있습니다.
:
: 파스칼 문법 c++과 비교해서 설명한 책이 있었으면 정말 좋겠습니다.
: 그런 책이 있으면 소개시켜 주세요.
: 그럼, 글 읽어 주신 모든 분들 감사합니다. 복 받으실거예요.
:
:
: C++에서는 동적 배열을 만들면 delete로 삭제를 해야 합니다.
: 파스칼에서는 동적으로 만든것을 어떻게 삭제하는지요?
: 배열은 new, dispose를 사용하면 안된다고 파스칼 안내서에서 읽었습니다.
: 그리고 함수 선언을 할 때 인자값 초기화가 파스칼에서 가능한가요?
:
: 예를 들어
: void __fastcall Test(Byte* bArray, int count = 10);
: 이렇게 말입니다.
:
: void __fastcall TData::Test(Byte* bArray, int count)
: {
: bArray = new Byte[count];
: for (int i=0; i<count; i++) {
: bArray[i] = 0;
: }
: }
:
:
: 파스칼로
:
: procedure TData.Test(bArray : Array of Byte; count : Integer);
: var
: i : Integer;
: begin
: SetLength(bArray, count);
: for I:=0 to count do begin
: bArray[i] := 0;
: end;
: end;
|