本文整理汇总了C++中Prefix::pop_front方法的典型用法代码示例。如果您正苦于以下问题:C++ Prefix::pop_front方法的具体用法?C++ Prefix::pop_front怎么用?C++ Prefix::pop_front使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Prefix
的用法示例。
在下文中一共展示了Prefix::pop_front方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: add
// add: add word to suffix list, update prefix
void add(Prefix& prefix, const string& s)
{
if (prefix.size() == NPREF) {
statetab[prefix].push_back(s);
prefix.pop_front();
}
prefix.push_back(s);
}
示例2: AddEntry
void AddEntry(Prefix& prefix, const string& suffix)
{
if (prefix.size() == PREFIX_LENGTH) {
dictionary[prefix].push_back(suffix);
prefix.pop_front();
}
prefix.push_back(suffix);
}
示例3: add
void add(Prefix& prefix, string& new_word)
{
if(prefix.size() == prefix_len_)
{
state_list[prefix].push_back(new_word);
prefix.pop_front();
}
prefix.push_back(new_word);
}
示例4: generate
// generate: produce output, one word per line
void generate(int nwords)
{
Prefix prefix;
int i;
for (i = 0; i < NPREF; i++)
add(prefix, NONWORD);
for (i = 0; i < nwords; i++) {
vector<string>& suf = statetab[prefix];
const string& w = suf[rand() % suf.size()];
if (w == NONWORD)
break;
cout << w << "\n";
prefix.pop_front(); // advance
prefix.push_back(w);
}
}
示例5: GenerateText
void GenerateText(int wordCount, ofstream& outFile)
{
Prefix prefix;
int i;
for (i = 0; i < PREFIX_LENGTH; i++){
AddEntry(prefix, NONWORD);
}
for (i = 0; i < wordCount; i++) {
vector<string>& suffix = dictionary[prefix];
const string& word = suffix[rand() % suffix.size()];
if (word == NONWORD){
break;
}
outFile << word << " ";
//shift the prefix by a word, to keep generating.
prefix.pop_front();
prefix.push_back(word);
}
}