是否有实际的理由在Microsoft .NET 2.0/3.5中使用结构而不是某些类?
"结构和类之间有什么区别?" - 这可能是关于".NET开发人员"职位空缺的最热门问题.面试官认为正确的唯一答案是"结构在堆栈上分配,类在堆上分配",没有进一步的问题.
一些谷歌搜索显示:
a)结构有很多限制,与类相比没有额外的能力,
b)堆栈(和这样的结构)在非常特殊的条件下可以更快,包括:
- 数据块的大小少于16个字节
- 没有广泛的装箱/拆箱
- 结构的成员几乎是不可改变的
- 整套数据不大(否则我们得到堆栈溢出)
(如果错误或未满,请更正/添加到此列表中)
据我所知,大多数典型的商业项目(ERM,会计,银行解决方案等)甚至没有定义单一结构,所有自定义数据类型都被定义为类.这种方法有什么不对或至少是不完美的吗?
注意:问题是关于普通商业应用程序,请不要列出游戏开发,实时动画,向后兼容性(COM/Interop),非托管代码等"异常"案例 - 这些答案是已经在这个类似的问题下:
如果将一个Accordion导航组件添加到Flex Application,如下所示:
<mx:Accordion x="14" y="570" width="321" height="200">
<s:NavigatorContent label="Accordion Pane 1" width="100%" height="100%">
</s:NavigatorContent>
<s:NavigatorContent label="Accordion Pane 2" width="100%" height="100%">
</s:NavigatorContent>
</mx:Accordion>
Run Code Online (Sandbox Code Playgroud)
然后你的手风琴的窗格会立即跳开并关闭.
问题是:我应该编写什么代码来使我的手风琴窗格切换动画?
(就像在Adobe的演示中称为Tour de Flex)
通过窗格之间的动画切换来了解我的意思:
1)到这里:http://www.adobe.com/devnet-apps/flex/tourdeflex/web/
2)选择其他组件 - >容器 - >超级手风琴左侧窗格
3)单击Super Accordion的窗格标题并查看它们的移动情况
谢谢!