我了解到引用类型参数传递只是引用的一个副本。如果将传入的引用参数指向被调用方法中的另一个对象,则原始引用不会改变。
我有一个测试引用类型参数传递的测试方法。使用有效的 SystemSwEvent 类型对象从该测试方法调用 refTest(SystemSwEvent systemSwEvent)
方法。在 refTest()
方法中,调用了 processEvScanDataAvailable(EvScanDataAvaialble systemSwEvent)
方法。在 processEvScanDataAvailable(EvScanDataAvaialble systemSwEvent)
方法中,我将传入的引用参数设置为 null
。我希望 refTest()
中的参数不应更改。但事实并非如此。它将暂时更改为空。为什么?
最佳答案
调试器在当前上下文中识别名称并显示值。 这只是巧合,您将光标指向实际触发了当前正在执行的方法(当前上下文)的位置。
另请注意,您可以使用调用堆栈工具来检查调用方方法的参数。
关于c# - 引用类型参数问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5681929/