[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Gnash-commit] gnash ChangeLog backend/render_handler.h backen...
From: |
Bastiaan Jacques |
Subject: |
Re: [Gnash-commit] gnash ChangeLog backend/render_handler.h backen... |
Date: |
Fri, 16 Nov 2007 04:24:42 +0100 (CET) |
On Sat, 10 Nov 2007, Sandro Santilli wrote:
+/// Equality operator
+template <typename T> inline bool
+operator== (const Point2d<T>& p1, const Point2d<T>& p2)
+{
+ return p1.x == p2.x && p1.y == p2.y;
+}
+
+/// Inequality operator
+template <typename T> inline bool
+operator!= (const Point2d<T>& p1, const Point2d<T>& p2)
+{
+ return ! ( p1 == p2 );
+}
+
Why did you declare these templates instead of overloading the templated
Point2d class operator== and operator!=? In other words, what objections
would you have to the following patch:
Index: libgeometry/Point2d.h
===================================================================
RCS file: /sources/gnash/gnash/libgeometry/Point2d.h,v
retrieving revision 1.2
diff -p -u -r1.2 Point2d.h
--- libgeometry/Point2d.h 10 Nov 2007 11:51:42 -0000 1.2
+++ libgeometry/Point2d.h 16 Nov 2007 03:22:15 -0000
@@ -141,6 +141,18 @@ public:
{
return sqrtf(squareDistance(p));
}
+
+ /// Equality operator
+ bool
+ operator== (const Point2d<T>& p) const
+ {
+ return x == p.x && y == p.y;
+ }
+
+ bool operator!=(const Point2d<T>& p) const
+ {
+ return ! (*this == p);
+ }
};
/// Output operator
@@ -150,19 +162,6 @@ operator<< (std::ostream& os, const Poin
return os << "Point2d(" << p.x << "," << p.y << ")";
}
-/// Equality operator
-template <typename T> inline bool
-operator== (const Point2d<T>& p1, const Point2d<T>& p2)
-{
- return p1.x == p2.x && p1.y == p2.y;
-}
-
-/// Inequality operator
-template <typename T> inline bool
-operator!= (const Point2d<T>& p1, const Point2d<T>& p2)
-{
- return ! ( p1 == p2 );
-}
} // namespace gnash::geometry