本文整理汇总了C++中SiteList::intersectWith方法的典型用法代码示例。如果您正苦于以下问题:C++ SiteList::intersectWith方法的具体用法?C++ SiteList::intersectWith怎么用?C++ SiteList::intersectWith使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SiteList
的用法示例。
在下文中一共展示了SiteList::intersectWith方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: wordInSite
/**
* procesează o comandă de tip SITE
*
* intersecțiile se realizează similar cu cele de la GET
*/
void Algorithm::wordInSite(const std::string &row)
{
char *row_tok=strdup(row.c_str());
char *command=strtok(row_tok," ");
if (strcmp(command,"SITE")!=0)
{
free(row_tok);
return;
}
char *site=strtok(NULL," ");
char *word=strtok(NULL," ");
SiteList* intersection = NULL;
if (word == NULL) {
cout << "WORD_NOT_FOUND" << endl;
free(row_tok);
return;
}
if (h->get(word) == NULL) {
cout << "WORD_NOT_FOUND" << endl;
free(row_tok);
return;
}
intersection = h->get(word)->duplicate();
while(word)
{
if (h->get(word) == NULL) {
cout << "WORD_NOT_FOUND" << endl;
delete intersection;
free(row_tok);
return;
}
intersection->intersectWith(h->get(word));
word=strtok(NULL," ");
}
SiteNode* p = intersection->first;
while (p != NULL) {
if (strcmp(p->site, site)==0) {
cout << "WORD_FOUND" << endl;
delete intersection;
free(row_tok);
return;
}
p = p->next;
}
cout << "WORD_NOT_FOUND" << endl;
delete intersection;
free(row_tok);
}
示例2: getSites
/**
* procesează o comandă de tip GET
*/
void Algorithm::getSites(const std::string &row)
{
char *row_tok=strdup(row.c_str());
char *command=strtok(row_tok," ");
if (strcmp(command,"GET")!=0)
{
free(row_tok);
return;
}
char *word=strtok(NULL," ");
/* O listă auxiliară, pentru intersecții */
SiteList* intersection = NULL;
if (word == NULL) {
printf("Error!\n");
}
if (h->get(word) == NULL) {
cout << "SITE_NOT_FOUND" << endl;
free(row_tok);
return;
} else {
intersection = h->get(word)->duplicate();
}
while(word)
{
if (h->get(word) == NULL) {
cout << "SITE_NOT_FOUND" << endl;
delete intersection;
free(row_tok);
return;
} else {
/* Intersectez cu noua listă */
intersection->intersectWith(h->get(word));
}
word=strtok(NULL," ");
}
intersection->print();
delete intersection;
free(row_tok);
}