问题 单项选择题

甲公司职员费某,受公司的指派从事 M产品新的生产技术的研发,与1999年12月完成,甲公司一直对其采取保密措施使用,于2000年4月14日申请发明专利,2001年12月国家专利局,国家专利局公布了该项发明专利申请,2002年6月授予甲公司专利权,此前甲公司已经将此项技术与乙公司签订实施许可合同,乙公司每年缴纳使用费5万元。现甲公司欲以100万的价格将此专利技术转让给丙,费某和乙公司都主张优先购买权,有人向专利复审委员会申请需宣告该专利无效,因为2000年初丁公司已经开始使用该技术进行生产了。但后来查明是因为甲公司的技术保密人员被丁公司的人员买通泄露了甲公司的此项技术。

甲公司的专利权是否应当宣布无效( )。

A.不应当,因为甲公司在1999年12月份就完成了研发,开始使用

B.应当,因为丁公司在其申请前就已经开始使用该技术了,该技术不具有新颖性

C.不应当,甲的技术在申请前六个月内因“未经本人同意而被泄露”不丧失新颖性

D.应当,甲的技术在公开前因“未经本人同意而被泄露”超过了六个月,丧失新颖性

答案

参考答案:C

单项选择题 A1/A2型题
填空题

阅读下列说明和C++代码,将应填入 (n) 处的字句写在对应栏内。

[说明]

已知某类库开发商提供了一套类库,类库中定义了Application类和Document类,它们之间的关系如图18-15所示,其中,Application类表示应用程序自身,而Document类则表示应用程序打开的文档。Application类负责打开一个已有的以外部形式存储的文档,比如一个文件,一旦从该文件中读出信息后,它就由一个Document对象表示。

当开发一个具体的应用程序时,开发者需要分别创建自己的Application和Document子类,例如图18-15中的类MyApplication和类MyDocument,并分别实现Application类和Document类中的某些方法。

已知Application类中的openDocument()方法采用了模板方法(Template Method)设计模式,该方法定义了打开文档的每一个主要步骤,如下所示。

(1)检查文档是否能够被打开,若不能打开,则给出出错信息并返回。

(2)创建文档对象。

(3)通过文档对象打开文档。

(4)通过文档对象读取文档信息。

(5)将文档对象加入到Application的文档对象集合中。

[C++代码]

#include<iostream>

#include<vector>

using namespace std;

C1ass Document

public:

void save()/*存储文档数据,此处代码省略*/

void open(string docName) /*打开文档,此处代码省略*/

void close() /*关闭文档,此处代码省略*/

virtual void read(String docName)=0;

class Appplication

private:

vector< (1) >docs; /*文档对象集合*/

public:

bool canopenDocument(String docName)

/*判断是否可以打开指定文档,返回真值时表示可以打开返回假时值表示不可打开,此处代码省略*/

void addDocument(Document *aD0cument)

/*将文档对象添加到文档对象集合中*/

docs.push_back( (2) );

virtual Document *doCreateDocument()=0;/*创建一个文档对象*/

void openDocument(string docName)/*打开文档*/

if( (3) )

cout<<"文档无法打开!"<<end1;

return;

(4) adoc= (5)

(6)

(7)

(8)

(6)处填()。