Jak rozumiem, C# przekazuje parametry do metod przez odniesienie. W VB.NET można to określić za pomocą ByVal i ByRef. Wartością domyślną jest ByVal.Jak "zrobić" ByVal w C#
Czy jest to zgodne z programem Visual Basic 6.0, czy jest to po prostu losowe? Ponadto, jak mogę określić, co używać w C#? W pewnym sensie podoba mi się pomysł przekazywania parametrów według wartości.
Zobacz szczegóły na temat wartości domyślnych na stronie http://pobox.com/~skeet/csharp/parameters.html. –
Dobra odpowiedź, Jon, ale jesteś także sztuczną inteligencją! –
W wersji vb6 parametry zostały przekazane jako 'ByRef' przy braku słowa kluczowego' ByVal'. W językach .net wartością domyślną jest wartość. Aby ułatwić migrację i uniknąć nieporozumień, vb.net wymaga, aby parametry były wyraźnie oznaczone jako "ByRef" lub "ByVal", ale edytor VS będzie "automatycznie korygował" parametry bez takiego oznaczania, dodając "ByVal". Ponieważ nigdy nie było żadnego języka C#, który miałby domyślne działanie pass-by-ref, nie ma problemu, mówiąc po prostu, że nieoznaczone parametry są wartościami typu pass-by-value. – supercat