专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅
内存映射文件 本课中我们将要讲解内存映射文件并且演示如何运用它。您将会发现使用内存映射文件是非常简单的。 理论: 如果您仔细地研究了前一课的例子, 就会发现它有一个严重的缺陷:如果您想读的内容大于系统分配的内存块怎么办?如果您想搜索的字符串刚好超过内存块的边界又该如何处理?对于第一个问题,您也许会说,只要不断地读就不解决了吗。至于第二个问题,您又会说在内存块的边界处做一些特别的处理,譬如放上一些标志位就可以了。原理上确实是行得通,但是这随问题复杂程度加深而显得非常难以处理。其中的第二个问题是有名的边界判断问题,程序中许许多多的错误都是由此引起。想一想,如果我们能够分配一个能够容纳整个文 [阅读全文] [PDF]
就是这样一个结构: template <typename T> struct Type2Type { typedef T OriginalType; }; 假定有个片断如下,创建一个T* template <class T,class U> T* Create(const U& arg) { return new T(arg); } 如果对于某个类如“Widget”,其ctor要有两个参数,比如第二个参数必须是-1(对于旧的代码来说,谁知道呢:)),但又不想另外创建一个“CreateWidget [阅读全文] [PDF]
@AttributeOverrides由多个@AttributeOverride注释组成,每个@AttributeOverride表示属性的映射,它的定义如以下所示: @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME) public @interface AttributeOverride { String name(); Column column(); } 在使用@AttributeOverride注释应注意以下几方面的问题: l name属性表示嵌入式类中的属性名称。 l column属性表示, [阅读全文] [PDF]
1 共3条 分1页