有没有办法以独立于平台的方式确定机器有多少来自C/C++的内核?如果不存在这样的事情,那么每个平台确定它(Windows/*nix/Mac)呢?
我得到了创建业务对象或实体来表示类似Person的概念.然后我可以使用DTO序列化Person并将其发送给客户端.如果客户端更改了对象,它可以在那里有一个IsDirty标志,所以当它被发送回服务器时,我知道要更新它.
但是如果我有一个Order对象呢?这有主页头信息,客户,供应商,所需日期等.然后它有OrderItems,它是一个List <OrderItem>,是要订购的项目.我希望能够在我的UI上使用此业务对象.所以我有一些文本框连接到位置,供应商,所需日期等,并且网格连接到OrderItems.由于OrderItems是一个List,我可以轻松地添加和删除记录.但是我该如何跟踪这个,特别是删除的项目.我不希望删除的项目在我的网格中可见,如果我使用foreach,我不应该迭代它们,因为它们已被删除.但是我仍然需要跟踪删除的事实.如何跟踪更改.我想我需要使用一个单位的工作?但随后代码似乎变得相当复杂.那么我想知道为什么不简单地使用DataTables并免费获得更改跟踪?但后来我读到了业务对象是如何实现的.
我在简单的Person示例中找到了各种示例,bnut不是像Orders这样的标题详细示例.
BTW使用C#3.5.
给定一个foo
类型的变量和该类中FooClass*
的成员变量命名bar
,是在任何具有一些约束的情况下的距离foo
和&(foo->bar)
相同的距离:
FooClass
是非POD类型.
我们知道它foo
总是指向一个实例FooClass
,而不是它的某个子类型.
我们只关心单个编译器和单个编译的行为; 也就是说,在gcc下可能导致的值从未在使用MSVC编译的代码中使用,并且永远不会保存以便在编译之间重复使用.它以二进制计算并在二进制文件中使用,就是这样.
我们不使用自定义new
,尽管该类的某些实例可能是堆栈分配的,而是一些堆分配的.
没有明确ctor
的FooClass
; 它依赖于编译器生成的一个(并且每个字段FooClass
都是POD或默认构造的).
我无法在标准中找到这方面的保证(我也没想到),但是我用gcc进行的基本测试让我相信它总会如此.我也知道这个保证是针对POD类型的,但我们假设这种类型不能是POD.
更新/澄清:这仅适用于单个二进制文件的单个编译; 计算出的偏移量永远不会离开那一次执行.基本上,我希望能够在静态地图中唯一地标识类的字段,然后能够在某个宏/模板/ EVIL欺骗中查找该映射.这仅仅是为了我自己的娱乐,没有生命支持机器会依赖这个代码.