如何在函数调用时不改变对象的值
本文关键字:改变 对象 函数调用 | 更新日期: 2023-09-27 17:49:35
我有一个对象的属性叫做CountItem
Object.CountItem
它的值是0
当我调用以下函数时:
DoSomeThing(Object, out Count);
// -> public object DoSomeThing(ObjectClass Object, out int Count)
在函数中,我改变了Object.CountItem = 2;
函数运行后,我的对象的值发生了变化,现在Object.CountItem
为2
我不明白为什么我的变量不是out var已经改变了值?
您的对象是引用类型,在任何方法中更改它都会更改对象。Out适用于值类型对象(如int, bool等)
您需要在离开方法作用域之前为out参数赋值