compare the difference between passing a null reference vs. a reference to a zero length string : Ref Out « Language Basics « C# / C Sharp






compare the difference between passing a null reference vs. a reference to a zero length string

 

using System;

public class Class1 {
    public static void Main(string[] strings) {
        Example exampleObject = new Example();

        Console.WriteLine("Pass a null object:");
        string s = null;
        exampleObject.TestString(s);
        Console.WriteLine();

        Console.WriteLine("Pass an empty string:");
        exampleObject.TestString("");
        Console.WriteLine();

        Console.WriteLine("Pass a real string:");
        exampleObject.TestString("test string");
        Console.WriteLine();

    }
}

class Example {
    public void TestString(string sTest) {
        if (sTest == null) {
            Console.WriteLine("sTest is null");
            return;
        }

        if (String.Compare(sTest, "") == 0) {
            Console.WriteLine("sTest references an empty string");
            return;
        }
        Console.WriteLine("sTest refers to: '" + sTest + "'");
    }
}

 








Related examples in the same category

1.Reference, output and value parameters.
2.Testing the effects of passing array references by value and by reference.
3.the out descriptor allows a function a value in an argument without initializing the argumentthe out descriptor allows a function a value in an argument without initializing the argument