c++ - Which operator i should call? -


i have little problem operators in c++. have following code:

class segment{  public:  double a, b; segment(double a=0, double b=0) : a(a), b(b) {} // segment operator&(const segment & d){ //                 segment ss; //                 if (d >= this.a && d<this.b) //                 { //                         return 1; //                 } //                 else{ //                         return 0; //                 }          //         } }; int main (){  //segment seg2(2,5); segment seg(2,3), s = 2*((seg-2)/2+seg)/3+1;             pokaz(s);             cout << (s(5) ? "true" : "false") << endl; } 

i call operator using s(5) return me true if 5 between 2 , 5 , false if not... dont know how call kind of operator.. know it's maybe noob question learning operators , need little help.. me , show how correctly call operator? fight 3 hours no effects :(

you have following code:

s = 2*((seg-2)/2+seg)/3+1 

seg-2 requires operator-() between segment , int.

depending on function returns, (seg-2)/2 may require operator/() function between returned value type , int.

depending on type (seg-2)/2 evaluates to, (seg-2)/2+seg) may require operator+() function between type , segment.

depending on type (seg-2)/2+seg evaluates to, 2*((seg-2)/2+seg) may require operator*() between int , type (seg-2)/2+seg evaluates to.

depending on type 2*((seg-2)/2+seg) evaluates to, 2*((seg-2)/2+seg)/3 may require operator/() between type , int.

depending on type 2*((seg-2)/2+seg)/3 evaluates to, 2*((seg-2)/2+seg)/3+1 may require operator+() between type , int.

hopefully, evaluates segment. otherwise, have define way convert type segment able use:

s = 2*((seg-2)/2+seg)/3+1 

if provide operator+(), operator-(), operator*() and operator/() between segments, you'll set since have way construct segment int.


Comments

Popular posts from this blog

c++ - OpenCV Error: Assertion failed <scn == 3 ::scn == 4> in unknown function, -

php - render data via PDO::FETCH_FUNC vs loop -

The canvas has been tainted by cross-origin data in chrome only -