Numerical Recipes 'dmatrix
을 사용하는 오래된 응용 프로그램을 아주 광범위하게 개편하고 있습니다. 응용 프로그램에서 작업하는 이유 중 하나는 코드가 열리려고하기 때 문에 모든 숫자 래서 피 코드를 자유롭게 배포 할 수있는 코드로 바꾸고 싶습니다.Numerical Recipe의 dmatrix를 C++ 클래스로 바꾸기
dmatrix
은 복식의 매트릭스를 반환하는 함수입니다. 과 같이 각각의 인덱스에 대한 호출 용품 하한 및 상한 :
double **mat = dmatrix(1,3,1,3);
mat
이제 1~3 3 행 1 내지 3, 3 열을 보유 mat[1][1]
첫번째 요소되도록 mat[3][3]
이 마지막입니다.
다양한 C++ 행렬 구현을 살펴 보았지만 어느 것도 각 차원의 하한을 지정할 수 없었습니다. 사용할 수있는 무언가가 있습니까? 아니면 이에 대한 또 다른 행렬 클래스를 작성해야합니까?
기존 구현을 본 적이 없습니다 (단 하나 여야합니다.). 사용자가 직접 새 구현을 작성하려는 경우 기존 구현에서 상속하여 테스트 비용을 줄일 수 있습니다. –
비슷한 클래스를 C++로 작성하는 것은 상대적으로 간단합니다.하지만 성능을 테스트해야합니다. 결국 'double **'만큼 빠르기 때문입니다. – zmbq
Yuck : -/그 대신 lower bound zero를 사용하도록 나머지 코드를 변경할 수 있습니까? 커버 아래에서 이전 코드는 인덱스가 일반 이중 포인터에서 작동하도록 과도하게 할당해야합니다. – Rup