Tag: 参考参数

C#属性和ref参数,为什么不加糖?

我只是遇到了这个错误消息,而在C# 属性或索引器不能作为out或refparameter passing 我知道是什么导致了这一点,做了一个快速的解决scheme,创build一个正确的types的本地variables,调用该函数作为out / ref参数,然后将其分配回属性: RefFn(ref obj.prop); 变成 { var t = obj.prop; RefFn(ref t); obj.prop = t; } 很明显,如果该属性不支持在当前上下文中获取和设置,则会失败。 为什么C#没有为我做这个? 我可以想到这可能会导致问题的唯一情况是: 穿线 例外 对于线程来说,转换会影响到写入的时间(在函数调用之后),但是我更怀疑任何代码都可能会在中断的时候得不到同情。 例外情况是, 如果函数分配给几个参数之一而不是抛出? 任何微不足道的解决scheme都会导致所有参数或者一些参数不被分配给某些应该有的而有些不应该被分配的参数。 我再次认为这不会被支持使用该语言。 注意:我理解为什么会生成此错误消息的机制。 我在寻找的是为什么C#不会自动实现微不足道的解决方法。

如何在C ++中使用引用参数?

我想了解如何使用参考参数。 在我的文章中有几个例子,但是它们太复杂了,我不明白为什么以及如何使用它们。 如何以及为什么要使用参考? 如果您没有将参数设置为参考,会发生什么情况,而是将其closures? 例如,这些function有什么区别: int doSomething(int& a, int& b); int doSomething(int a, int b); 我知道引用variables是用来改变一个forms – >引用,然后允许双向交换参数。 不过,这是我所知道的程度,更具体的例子会有很大的帮助。