问题 单项选择题

With respect to the Standards relating to preservation of confidentiality, which of the following statements is least accurate Members and candidates must keep information about all former current, and prospective clients confidential unless :()

A. the information concerns illegal activities on the part of the clients.

B. disclosure is required by firms' policies.

C. the clients permit disclosure of the information.

答案

参考答案:B

解析:

本题考查的是客户的私密信息是否可以公开。教材中列举了可以披露的三种情况,一般符合披露要求的情况是:法律上要求公开(而不是公司政策);客户或潜在客户允许公开;客户行为中包含非法行为,同时外加接受CFA协会专业行为项目(PCP)的调查。

问答题

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


以下是C语言实现,能够正确编译通过。
[C代码]
typedef void( (1) )(char *title);
typedef void(*fun2)(char items[] [10], int N);
typedef char* (*fun3)();
char buffer[500];
struct Builder//构造器
fun1 makeTitle;
(2) makeString;
fun2 makeItems;
fun3 getResult;
;
struct Director
struct Builder builder;
;
char* construct( (3) director)//构造文件

char items[2][10] = "早安", "午安";
director->builder.makeTitle("Greeting");
director->builder.makeString("从早上到白天结束");
director->builder.makeItems(items, 2);
director->builder.makeString("到了晚上");
strcpy(items[0], "晚安");
strcpy(items[1], "好梦");
director->builder.makeItems(items, 2);
return director->builder.getResult();

void TXTmakeTitle(char* title)

strcat(buffer, "『");
Strcat(buffer, title);
strcat(buffer, "』\n\n");

void TXTmakeString(char* str)

strcat(buffer, "■");
Strcat(buffer, str);
strcat(buffer, "\n\n");

void TXTmakeItems(char items[] [10], int N)//将items加入文件中

for(int i = 0, i < N; i++)
strcat(buffer, "·");
strcat(buffer, (4) );
strcat(buffer, "\n");

strcat(buffer, "\n");

char* TXTgetResult()

return buffer;

void main()

Director director;
(5) = ’\0’;//清空缓冲区,使目前缓冲区中的内容不影响新生成的文件
director.builder.makeTitle = TXTmakeTitle;
director.builder.makeString = TXTmakeTitle;
director.builder.makeItems = TXTmakeItems;
director.builder.getResult = TXTgetResult;
char* result = construct(&director);
printf("%s\n", result);

单项选择题