Structure parameter passed by Value and by Reference : ByVal : Language Basics : VB.Net examples (example source code) Organized by topic

C++
PHP
VB.Net
VB.Net Home »  Language Basics   » [  ByVal  ]  Screenshots 
 



Structure parameter passed by Value and by Reference

Imports System

public class MainClass
   Shared Sub Main()
        Dim As MyStruct
        Dim As MyStruct
        A.X = 1
        B = A
        Console.WriteLine("Initial state StructTests")
        Console.WriteLine("Are A and B the same? " (A.Equals(B)).ToString())
        Console.WriteLine("A.x: " + A.X.ToString() " B.x " + B.X.ToString())
        FunctionPassStructureByReference1(B)
        Console.WriteLine("After FunctionPassStructureByReference1")
        Console.WriteLine("Are A and B the same? " (A.Equals(B)).ToString())
        Console.WriteLine("A.x: " + A.X.ToString() " B.x " + B.X.ToString())
        A.X = 1
        B = A
        FunctionPassStructureByReference2(B)
        Console.WriteLine("After FunctionPassStructureByReference2")
        Console.WriteLine("Are A and B the same? " (A.Equals(B)).ToString())
        Console.WriteLine("A.x: " + A.X.ToString() " B.x " + B.X.ToString())
        A.X = 1
        B = A
        FunctionPassStructureByValue(B)
        Console.WriteLine("After FunctionPassStructureByValue")
        Console.WriteLine("Are A and B the same? " (A.Equals(B)).ToString())
        Console.WriteLine("A.x: " + A.X.ToString() " B.x " + B.X.ToString())
        A.X = 1
        B = A
        FStructByVal2(B)
        Console.WriteLine("After FStructByVal2")
        Console.WriteLine("Are A and B the same? " (A.Equals(B)).ToString())
        Console.WriteLine("A.x: " + A.X.ToString() " B.x " + B.X.ToString())
        
   End Sub

   Shared Public Sub FunctionPassStructureByReference1(ByRef Y As MyStruct)
        Y.X = 5
    End Sub

   Shared Public Sub FunctionPassStructureByReference2(ByRef Y As MyStruct)
        Y = New MyStruct()
        Y.X = 5
    End Sub

   Shared Public Sub FunctionPassStructureByValue(ByVal Y As MyStruct)
        Y.X = 5
    End Sub

   Shared Public Sub FStructByVal2(ByVal Y As MyStruct)
        Y = New MyStruct()
        Y.X = 5
    End Sub


    Structure MyStruct
        Public As Integer
    End Structure

End Class


           
       
Related examples in the same category
1.  Object parameter passed by Value and by Reference Object parameter passed by Value and by Reference
2.  String parameter passed by Value and by Reference String parameter passed by Value and by Reference
3.  Array parameter passed by Value and by Reference Array parameter passed by Value and by Reference
4.  Function with pass by value Parameter Function with pass by value Parameter
5.  Passing arrays and individual array elements to procedures Passing arrays and individual array elements to procedures
6.  Modify Array Element By Value Modify Array Element By Value
7.  Array passed By Value Array passed By Value
8.  Squares three values ByVal and ByRef, displays results Squares three values ByVal and ByRef, displays results