首页 / C# / c# – 废除Globals?
c# – 废除Globals?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# – 废除Globals?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含602字,纯文字阅读大概需要1分钟。
内容图文
![c# – 废除Globals?](/upload/InfoBanner/zyjiaocheng/759/bc7bcb589afd4544af2a6354503fb321.jpg)
我有一组树对象,在20年代的某个地方有一个深度.此树中的每个节点都需要访问其树的根.
几个解决方案:
>每个节点都可以直接存储对根的引用(浪费内存)
>我可以通过“上升”(浪费周期)在运行时计算根
>我可以使用静态字段(但这相当于全局变量)
有人可以提供一种不使用全局(在任何变体中)但在内存或周期中分别比#1或#2更有效的设计吗?
编辑:由于我有一组树,我不能简单地将它存储在静态中,因为它很难区分树. (感谢maccullt)
解决方法:
将根作为参数传递给需要它的节点中的任何函数.
编辑:选项实际上如下:
>将根引用存储在节点中
>根本不存储根参考
>将根引用存储在全局中
>将根引用存储在堆栈上(我的建议,访客模式或递归)
我认为这一切都有可能,没有选择5.
内容总结
以上是互联网集市为您收集整理的c# – 废除Globals?全部内容,希望文章能够帮你解决c# – 废除Globals?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。