В C # все параметры передаются по значению. Но HashTable
является ссылочным типом, поэтому передаваемое значение является ссылкой на фактический HashTable
, если это имеет смысл.
Таким образом, это означает, что HashTable не копируется при передаче его в качестве параметра, но если вы пытаетесь перезаписать значение параметра следующим образом:
private void SomeMethod(HashTable ht)
{
...
ht = new HashTable();
...
}
тогда это не будет работать, потому что вы перезаписываете параметр значения, а не фактический HashTable
.