问题 选择题

读示意图。图中深色所标示出来的地区,是21世纪初发生冲突的地区。依据地图所示信息和所学知识判断,下列表述正确的是

①冲突主要发生在发展中国家         ②冲突呈现区域性和局部性特点

③冲突是“冷战”格局的表现         ④冲突大多与民族宗教问题相关

A.①②③

B.②③④

C.①③④

D.①②④

答案

答案:D

题目分析:该题属于组合选择题,时限为“21世纪”。1991 年苏联的解体标志着雅尔塔体的崩溃,冷战格局的结束,所以题中③的叙述与史实不符,排除所有带③的选项,所以答案选D。

问答题

[说明]
在某些系统中,存在非常复杂的对象,可以采用循序渐进的方式进行组合,将小对象组合成复杂的大对象。
以下实例展示了Builder(生成器)模式。该实例用来建立“文件”,文件内容包括:一个标题、一串字符以及一些有项目符号的项目。Builder类规定组成文件的方法,Director类利用这个方法产生一份具体的文件。图5-1显示了各个类间的关系。
[图5-1]


以下是C++语言实现,能够正确编译通过。
[C++代码]
class Builder
public:
virtual void makeTitle(string title) = 0;
virtual void makestring(string str) = 0;
virtual void makeItems( (1) items) = 0;
virtual string getResult() = 0;
;
class Director
private:
(2) builder;
public:
Director(Builder *builder)
this->builder = builder;

string construct()
vectoritems;
items.push_back("早安"); items.push_back("午安");
builder->makeTitle("Greeting");
builder->makeString("从早上到白天结束");
builder->makeItems(items);
builder->makeString("到了晚上");
(3) ;//清空items向量
items.push_back("晚安"); items.push_back("好梦");
builder->makeItems(items);
return builder->getResult();

;
class TextBuilder : public (4)
private:
string buffer;
public:
TextBuilder()
buffer = " ";

void makeTitle(string title)
buffer += "=======================================\n";
buffer += "『" + title + "』\n";
buffer += "\n";

void makeString(string str)
buffer += "■" + str + "\n";
buffer += "\n";

void makeItems(vectoritems)
vector::iterator it;
for(it = items.begin(); it != items.end(); it++)
buffer += "." + *it + "\n";

buffer += "\n";

string getResult()
buffer += "========================\n";
return buffer;

;
int main()

Director *director = new Director(new TextBuilder());
string result = (string)director-) (5) ;
cout< return 0;

单项选择题 A2型题