本文整理汇总了C++中TLeaf::load方法的典型用法代码示例。如果您正苦于以下问题:C++ TLeaf::load方法的具体用法?C++ TLeaf::load怎么用?C++ TLeaf::load使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TLeaf
的用法示例。
在下文中一共展示了TLeaf::load方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: file
void
CArpaSlm::load(const char* filename, const TLexicon& lexicon)
{
printf("Loading ARPA slm..."); fflush(stdout);
ifstream file(filename);
char buf[1024];
for (int i = 0; i <= N_GRAM; ++i) {
unsigned lvl;
int size;
file.getline(buf, sizeof(buf));
if (!file) {
cerr << "Failed to read from" << filename << endl;
exit(1);
}
sscanf(buf, "\\%d-gram\\%d%*[\n]", &lvl, &size);
assert(lvl <= N_GRAM);
if (lvl == 0) {
TNode node0;
node0.load_level0(file);
m_levels[0].push_back(node0);
} else if (lvl < m_N) {
m_levels[lvl].reserve(size);
for (int i = 0; i < size; ++i) {
TNode node;
node.load(file, lexicon);
m_levels[lvl].push_back(node);
}
} else {
// leaf nodes
m_lastLevel.reserve(size);
for (int i = 0; i < size; ++i) {
TLeaf leaf;
leaf.load(file, lexicon);
m_lastLevel.push_back(leaf);
}
}
}
}