Hi,
Well.. first time in this private forum, so first I want to say that this new version is looking absolutely incredible. I find it hard to believe that you guys aren't charging for an upgrade from VA.NET 7.1!
Anyway, down to my problem. When I use the VA View, overloaded operators appear twice. Once looking all fine, and again with a malformed format (with invalid characters).
Unfortunately, I can't attach a JPG to postings in this forum - so I'll have to just make do with a crappy text-based representation of what's in the window. A guide to my notes is that [class] is the standard yellow/magenta/cyan icon used to mark a class in the view, [method] is the magenta icon used to mark public methods, and [duff] is a square - basically, the character displayed when a font doesn't contain the required glyph.
[class] VecMat:Matrix33
[method] *
[method] *=
[method] operator +[duff] inline Matrix33 operator +
[method] operator +
[method] operator +=[duff] inline Matrix33 operator +=
[method] operator +=
[method] operator -[duff] inline Matrix33 operator -
[method] operator -
[method] operator -=[duff] inline Matrix33 operator -=
[method] operator -=
[method] operator =[duff] inline Matrix33 operator =
[method] operator =
Notice that - for some reason - the '*' and '*=' overloads don't even say operator in front of them. And that - apart from the malformed lines - the operator methods don't list the arguments.
Here's the bit of my class that defines the operators...
// add, subtract, negate, absolute value
inline Matrix33 operator + ( const Matrix33& rhs ) const;
inline Matrix33 operator - ( const Matrix33& rhs ) const;
inline Matrix33& operator += ( const Matrix33& rhs );
inline Matrix33& operator -= ( const Matrix33& rhs );
inline Matrix33 operator - () const;
inline Matrix33 Abs() const;
// matrix scalar multiplies
inline Matrix33 operator * ( float rhs ) const;
inline Matrix33& operator *= ( float rhs );
// matrix vector multiplies
inline Vector3 operator * ( Vector3_arg rhs ) const;
// matrix matrix multiplies
inline Matrix33 operator * ( const Matrix33& rhs ) const;
inline Matrix34 operator * ( const Matrix34& rhs ) const;
inline Matrix33& operator *= ( const Matrix33& rhs );
So, errm.. that's it. I'm really sorry that I couldn't post a picture up - it would probably have been much clearer what was going on - but hopefully the information above will be useful..
If not, let me know and I'll email the picture on to you.
Cheers,
Dean
--
Dean Ashton