C++의 기본 생성자 메서드를 이해하는 데 어려움이 있고 메서드의 필요에 맞게 작성하는 방법이 있습니다. 나는 (n) x^(n) + a (n-1) x^(n-1) + ... + a (0)와 같은 다항식을 표현할 수있는 간단한 배열을 생성하는 임무를 가졌다. 계수의 배열이어야하고 계수 a (i)는 배열의 위치 i에 저장되어야합니다. 계수는 부동 소수점 값 (잠재적으로 음수)이므로 배열의 유형은 double이어야합니다. 또한 최대 MAXPOLY - 1 (또는 49)의 다항식을 유지하기 위해 배열을 제한하여 최대 MAXPOLY (50으로 설정된 상수 변수) 여야합니다. 전체 할당 지침/설명
는 여기에서 찾을 수 있습니다 :Beginner polynomial program in C++
내 문제는 다항식 개체, 폴리에 대한 기본 생성자를 생성에있다. 기본 클래스 생성자는 다항식을 상수 0으로 초기화하여 0 차 다항식 인 클래스 객체를 만듭니다. 그러나이 생성자의 사후 조건은 coeff의 모든 배열 요소 []는 0.0으로 설정되어 있으며, 이는 혼란이 계속되는 곳입니다. 먼저 0 - MAXPOLY에 대해 전체 배열을 초기화하고 0에서 poly를 정의해야합니까? 아니면 하나 또는 다른 충분해야합니까? 생성자를 작성하려면 어떻게해야합니까?기본 클래스 생성자에 문제가 발생했습니다. C++
이 질문이 오히려 분명한 것처럼 보일 수도 있지만 사과를 전합니다.이 주제에 관해 읽은 교과서 자료가 불분명합니다. 또한, 내가 생각하기에 너무 과장되어 혼란 스러울 수도 있습니다. 어떤 도움이라도 대단히 감사하겠습니다! 고맙습니다!
다항식이 0 도인 경우 다항식에 항이 없으므로 계수 배열에 어떤 값이 있는지 상관하지 않으므로 입력이 무엇이든 관계없이 0을 생성합니다. 배열을 0으로 초기화하는 것은 여전히 좋은 생각이지만 좋은 실행이라고 간주됩니다. – wakjah
@wakjah "차수 0"다항식에 1 개의 계수가 있습니다. "degree"는 현재'x'의 가장 큰 힘입니다; 'f (x) = 6'은 차수 0 다항식의 예이다. –