none
Überladener Operator (Equality) RRS feed

  • Frage

  • Hallo,

    Mein Problem besteht bei dem überladenen Operator ==

    Ich habe eine Klasse, in welcher die statische Methode eingebaut ist. Leider habe ich das Problem, wenn ich auf NULL prüfe kommt es zu einem nicht erwünschten Verhalten. Die Methode kommt einfach nicht mehr zurück. Ich habe es jetzt mit einem try/catch Block versucht und es funktioniert. Dies ist aber meiner Meinung nach eine unsaubere Lösung.

    Gibt es einen Weg ohne try/catch auszukommen?

    Hier der Code des überladenen Operators:

    public static bool operator ==(tCpCut lhs, tCpCut rhs)
    {
    	bool bequal = true;
    	try
    	{
    		if (lhs.fD != rhs.fD)
    		{
    			return false;
    		}
    		if (lhs.iNum != rhs.iNum)
    		{
    			return false;
    		}
    		if (lhs.iL != rhs.iL)
    		{
    			return false;
    		}
    		if (lhs.iT != rhs.iT)
    		{
    			return false;
    		}
    		if (lhs.iN != rhs.iN)
    		{
    			return false;
    		}
    		return bequal;
    	}
    	catch (Exception)
    	{
    		return false;
    	}
    }
    
    

    Vielen Dank schon mal im Voraus :-)

    Mittwoch, 17. August 2011 06:44

Antworten

Alle Antworten