여기있는 사람은 델파이가 절차에 대한 참조를 어떻게 표현하는지 알고 있습니까? 우리가 "시저"에있어 무엇을 TProc 및 참조의 내부 (메모리) 표현
var
proc: TProc;
...
proc = procedure begin beep end;
예를
에 대한?
"메소드 변수"의 경우 메모리 주소는 "프로 시저 주소"에 4 바이트, "객체 주소"에 대해서는 4 바이트이지만 "프로 시저에 대한 참조"에 대해서는 다소 다르다는 것을 알고 있습니다. 그것.
내가 원하는 이유는 레거시 코드에서 참조와 함께 사용하기를 원하기 때문입니다.
아무도 알고 있나요?
http://alex.ciobanu.org/?p=27 –
일반적으로 '참조 절차'는 특수 컴파일러 생성 인터페이스 변수에 보관됩니다. 이렇게하면 참조 카운트되므로 참조가 남아 있지 않을 때 캡처 된 변수를 정리할 수 있습니다. '참조 (reference) '를 사용하기 위해 구현 방법을 알 필요가 없습니다. 그래서 컴파일러를 가지고 있습니다. –