当前位置: 首页>>代码示例>>C++>>正文


C++ CIntVector::AddElt方法代码示例

本文整理汇总了C++中CIntVector::AddElt方法的典型用法代码示例。如果您正苦于以下问题:C++ CIntVector::AddElt方法的具体用法?C++ CIntVector::AddElt怎么用?C++ CIntVector::AddElt使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CIntVector的用法示例。


在下文中一共展示了CIntVector::AddElt方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: LoadIntVectorVector

/* load a matrix of integer values */
bool CIndexManager::LoadIntVectorVector(const CString& FileName, CVector<CIntVector>& Target, bool Verbose){
    Target.RemoveAll();
    static CIntVector EmptyVector;	
    bool Intervalled = false;

    CMMapFile FastFile(FileName);
    if (! FastFile.MMap(MMAP_READOPENMODE))
      return false;

    long fSize = FastFile.GetSize();
    if (fSize && FastFile.GetMem()) {
      m_Progress.Init(10, Verbose);
      CString Line;        
      while (FastFile.ReadLine(&Line) >= 0) {

        if (g_pHandler->GetSignalSigterm())
            return false;

        m_Progress.Show(FastFile.GetOffset(), fSize, Verbose);
        if (!Line.GetLength()) {
          Target += EmptyVector;
          continue;
        }
        int PrevPos = 0;
        int IntervalPos = -1;
        CIntVector LineVector;
        for (register int Pos = 0; Pos <= (int) Line.GetLength(); Pos++) {
          if ((Pos == (int) Line.GetLength())||(Line[Pos] == ' ')) {
            if (IntervalPos >= 0) {
              LineVector._AppendInt(Line.GetInt(PrevPos, IntervalPos - PrevPos), Line.GetInt(IntervalPos+1, Pos - IntervalPos-1));
              IntervalPos = -1;
            } else {
              if (Intervalled) LineVector._AppendElt(Line.GetInt(PrevPos, Pos - PrevPos));
              else LineVector.AddElt(Line.GetInt(PrevPos, Pos - PrevPos));
            }
            PrevPos = Pos + 1;
          } else if (Line[Pos] == '-') {
            if (!Intervalled) Intervalled = true;
            IntervalPos = Pos;
          }
        }
        Target += LineVector;
      }
      m_Progress.Finish(Verbose);
    }
    cout << "[" << Target.GetSize() << " lines]" << endl;
    return true;
}
开发者ID:dblock,项目名称:alkaline,代码行数:49,代码来源:IndexManager.cpp


注:本文中的CIntVector::AddElt方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。