n 차원 벡터에 액세스하려고하지만 어떻게 든 (empty? '()) false를 계속 반환합니다.N 차원 벡터에 액세스하려하지만 무한 재귀가 발생했습니다.
; n 차원 벡터에 액세스
;; (access-nd 벡터 a-list of numbers) -> 요소
;; (액세스 ND (벡터 (벡터 y)는 'A', B) 'X') 0 1) -> X
(define (access-nd avector . alist)
(cond
((and (not(empty? alist)) (vector? avector))
(vector-ref (access-nd avector (rest alist)) (first alist)))
(else avector)))
은 도와주세요.
편집 : 시정 CODE 대부분의 경우
(define (access-nd avector . alist)
(cond
((and (not(empty? alist)) (vector? avector))
(apply access-nd (vector-ref avector (first alist)) (rest alist)))
(else avector)))
왜 그런지 말해 줄 수 있습니까? – unj2
무슨 일이 일어나고 있는지 충분히 이해했으면 좋겠다. –