可观察集合可以作为 ref 参数传递吗?

发布于 2024-10-16 01:17:51 字数 116 浏览 6 评论 0原文

可观察集合可以作为引用参数传递吗?

我收到错误消息,无法将其作为参考参数传递。

这是我收到的确切错误消息:

“索引器的属性可能无法作为 out 或 ref 参数传递”。

Can an observable collection be passed as a reference parameter?

I am getting an error that this can't be passed as a reference parameter.

This is the exact error message I am getting:

"A property of indexer may not be passed as an out or ref parameter".

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

心如狂蝶 2024-10-23 01:17:51

是的,您可以通过引用传递 ObservableCollection。但是,您不能通过任何类的引用传递this。 (您可以使用结构,但请不要这样做。)

如果您在通过引用传递普通变量时遇到问题,请发布一些代码。

编辑:我刚刚看到您的编辑...并且编译器错误消息相当清楚。您不能通过引用传递属性或索引器。所以你不能这样做:

Foo(ref x.SomeProperty);

但你可以这样做:

var tmp = x.SomeProperty;
Foo(ref tmp);
x.SomeProperty = tmp;

Yes, you can pass an ObservableCollection by reference. However, you can't pass this by reference for any class. (You can for a struct, but please don't.)

If you're having trouble passing a normal variable by reference, please post some code.

EDIT: I've just seen your edit... and the compiler error message is fairly clear. You can't pass properties or indexers by reference. So you can't do:

Foo(ref x.SomeProperty);

but you can do:

var tmp = x.SomeProperty;
Foo(ref tmp);
x.SomeProperty = tmp;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文