How to use out to pass signifies a reference parameter in C#

2 Answers

0 votes
using System;

namespace ConsoleApplication_C_Sharp
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = "";
            Console.WriteLine(s);

            SetString2(s);
            Console.WriteLine(s);

            SetString1(out s);
            Console.WriteLine(s);
        }
        static void SetString1(out string s)
        {
            s = "java";
        }
        static void SetString2(string s)
        {
            s = "java";
        }
    }
}


/*
run:
     
java
 
*/

 



answered Feb 18, 2017 by avibootz
0 votes
using System;

namespace ConsoleApplication_C_Sharp
{
    class Program
    {
        static void Main(string[] args)
        {
            int a = 7, b = 3, sum = 0;
            Console.WriteLine("a = {0} b = {1} sum = {2}", a, b, sum);

            sum2(a, b, sum);
            Console.WriteLine("a = {0} b = {1} sum = {2}", a, b, sum);

            sum1(a, b, out sum);
            Console.WriteLine("a = {0} b = {1} sum = {2}", a, b, sum);
        }
        static void sum1(int a, int b, out int s)
        {
            s = a + b;
        }
        static void sum2(int a, int b, int s)
        {
            s = a + b;
        }
    }
}


/*
run:
     
a = 7 b = 3 sum = 0
a = 7 b = 3 sum = 0
a = 7 b = 3 sum = 10
 
*/

 



answered Feb 18, 2017 by avibootz

Related questions

2 answers 194 views
1 answer 140 views
140 views asked Nov 27, 2020 by avibootz
1 answer 255 views
1 answer 150 views
...