Relational Operator Overload : Operator Overload « Class « Visual C++ .NET

Home
Visual C++ .NET
1.2D
2.Class
3.Collections
4.Data Type
5.Database ADO.net
6.Delegate
7.Development
8.File Directory
9.Function
10.Generics
11.GUI Form
12.Language Basics
13.Network
14.Reflection
15.Security
16.Statement
17.Structure
18.Thread
19.XML
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Visual C++ .NET » Class » Operator Overload 
Relational Operator Overload
 

#include "stdafx.h"
using namespace System;

ref class Number 
{
public:
    Number(int x: i(x) {}

    static bool operator >(Number^ n, int v)  // maps to operator >
    {
        return n->i > v;
    }
    static bool operator >(int v, Number^ n)  // maps to operator >
    {
        return v > n->i;
    }

    virtual String ^ ToString() override
    {
        return i.ToString();
    }
private:
    int i;
};
 
int main()
{
   Number^ n = gcnew Number(5);

   if n > )
       Console::WriteLine("{0} Greater than 6", n);
   else
       Console::WriteLine("{0} Less than or Equal 6", n);

   if > n )
       Console::WriteLine("6 Greater than {0}", n);
   else
       Console::WriteLine("6 Less than or Equal {0}", n);


   
  
Related examples in the same category
1.Operator Overload Demo
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.