下午试题
C++题目#include
const OBS_MAXNUM=20;
__(1)___;
class DocExplorer{
public:
DocExplorer ((2)*doc);
___(3)___ void update(OfficeDoc *doc)=0;
};
class OfficeDoc {
private:
DocExplorer *myObs[OBS_MAXNUM]
int index;
public:
OfficeDoc(){
index=0;
void attach (DocExplorer *o){
if (index >=OBS_MAXNUM||o== NULL) return;
for (int loop = 0; loop if(myObs[loop] == o) return;
myObs[index] = o;
index++;
}
void detach(DocExplorer) *o{
if(o==null) return;
for (int loop = 0;loop if(myObs[loop]==o){
if(loop<=index-2) myObs[loop] = myObs[index-1];
myObs[index-1]=NULL;
index--;
break;
}
}
}
private:
void notifyObs() {
for(int loop=0;loop myObs[loop]->____(4)____;
}
};
DocExplorer:ocexplorer(OfficeDoc *doc){
doc->______(5)_____;
}