templates/functions/vers2/cmp.cc - The template function compare used for Point comparison. | Lecture 5 - slide 35 : 40 Program 4 |
// An excerpt of the previously shown program that uses the compare template function. // Here we show the use of compare on instances of class Point. #include <iostream> #include <string> #include "point.h" class ComparsionProblem{}; template<typename T> int compare(const T &v1, const T &v2){ if (v1 < v2) return -1; else if (!(v1 < v2) && !(v2 < v1)) return 0; else if (v2 < v1) return 1; else throw ComparsionProblem(); } int main(){ using namespace std; Point p1(1,2), p2(3,4); cout << compare(p1, p1) << endl; // 0 cout << compare(p1, p2) << endl; // -1 cout << compare(p2, p1) << endl; // 1 }