Passing objects by reference vs value
I just want to check my understanding of C#'s ways of handling things, before I delve too deeply into designing my classes. My current understanding is that: Struct is a value type, meaning it actually contains the data members defined within. Class is a reference type, meaning it contains references to the data members defined within. A method signature passes parameters by value , which means a copy of the value is passed to the inside of the method, making it expensive for large arrays and data structures. A method signature that defines a parameter with the ref or out keywords will instead