int main() { BinaryOperation bin1("10101"); BinaryOperation bin2(5); BinaryOperation bin3("11"); BinaryOperation bin4 = bin1 + bin3; cout << bin4 << endl; cin.get(); }
double bin(const double *knots,int ii,int n,double x) { double delta = 1e-8; if(n == 0) { return bin0(knots,ii,n,x); } else if(n == 1) { return bin1(knots,ii,n,x); } else if(n == 2) { return bin2(knots,ii,n,x); } else { return (x-knots[ii])/(knots[ii+n]-knots[ii]+delta)*bin(knots,ii,n-1,x) + (knots[ii+n+1] - x)/(knots[ii+n+1]-knots[ii+1]+delta)*bin(knots,ii+1,n-1,x); } }