本文整理汇总了C++中Linked::write方法的典型用法代码示例。如果您正苦于以下问题:C++ Linked::write方法的具体用法?C++ Linked::write怎么用?C++ Linked::write使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Linked
的用法示例。
在下文中一共展示了Linked::write方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: writeidxofs
void writeidxofs(offset_t o)
{
// lazy index write
if (outidx.get()) {
outidx->write(sizeof(o),&o);
return;
}
if (lastofs) {
if (fixedsize!=o-lastofs) {
// right create idx
StringBuffer tempname;
GetTempName(tempname.clear(),"srtidx",false);
outidxfile.setown(createIFile(tempname.str()));
Owned<IFileIO> fileioidx = outidxfile->open(IFOcreate);
outidx.setown(fileioidx?createBufferedIOStream(fileioidx,0x100000):NULL);
if (outidx.get()==NULL) {
StringBuffer err;
err.append("Cannot create ").append(outidxfile->queryFilename());
LOG(MCerror, thorJob, "%s", err.str());
throw MakeStringException(-1, "%s", err.str());
}
offset_t s = 0;
while (s<=lastofs) {
outidx->write(sizeof(s),&s);
s += fixedsize;
}
assertex(s==lastofs+fixedsize);
fixedsize = 0;
writeidxofs(o);
return;
}
}
else
fixedsize = (size32_t)(o-lastofs);
lastofs = o;
}