结晶信息框架

ISTable(IST表格)

用法示例:V8-0-11

----------------ISTable(IST表格)使用示例-------------1从头开始创建ISTable2打印表格三。访问行4.访问列5访问单元格6正在搜索表7删除列8删除行9.复制表#包括“ISTable.h”
   /***示例1:如何创建ISTable(IST表格)从头开始。**注意:此示例使用动态分配(堆)*///表格名称字符串tableName;//使用区分大小写的列名创建一个空表。ISTable(IST表格)*isTableP=新ISTable(IST表格)(表格名称);//创建三个空列isTableP->AddColumn(“firstColumn”);isTableP->AddColumn(“secondColumn”);isTableP->AddColumn(“第三列”);向量<string>row;//准备一行行.push_back(“一”);row.push_back(“两个”);row.push_back(“三个”);//添加行isTableP->AddRow(行);row.clear();//准备新行行.push_back(“四”);行.push_back(“五”);行.push_back(“六”);//添加行isTableP->AddRow(行);//再次添加同一行isTableP->AddRow(行);//现在表格是3x3(三行三列)

   /***示例2:如何打印ISTable(IST表格)*///打印表格cout<<(*isTableP)<<endl;
   /***示例3:如何访问表行。*///获取第三行(行索引为2)并打印出来isTableP->GetRow(行,2);cout<<“第三行是:”<<endl;for(unsigned int rowI=0;rowI<row.size()++第I行)cout<<row[rowI]<<endl;
   /***示例4:如何访问表列。*///获取第二列并打印出来向量<string>col;isTableP->GetColumn(列,“secondColumn”);cout<<“第二列是:”<<endl;for(无符号int colI=0;colI<col.size()++colI)cout<<col[colI]<<endl;

   /***示例5:如何访问表单元格。*///获取第一列和第二行中的单元格(行索引为1)//然后打印出来常量字符串&单元格=(*isTableP)(1,“firstColumn”);cout<<“第一列和第二行的单元格为:”<cell<endl;
   /***例6:如何搜索表。*///在表中搜索值为“四”和“六”的行//第一列和第三列。表格单元格被视为//区分大小写的字符串向量<string>searchCols;//首先设置搜索列名searchCols.push_back(“firstColumn”);searchCols.push_back(“第三列”;vector<string>searchValues;//初始化要搜索的内容searchValues.push_back(“四”);searchValues.push_back(“六”);//指示将第一个搜索列内容视为案例//敏感字符串。//注意,区分大小写/不区分大小写只是确定的//从第一个搜索列标志开始isTableP->SetFlags(“firstColumn”,ISTable(IST表格)::DT_STRING|ISTable(IST表格)::CASE_SENSE);//此向量将包含与搜索条件匹配的行找到向量<unsigned int>;//搜索表格isTableP->搜索(已找到,搜索值,搜索列);如果(!found.empty()){//发现了一些东西。打印匹配的行。cout<<“搜索在以下行中找到匹配条件:”<<endl;for(unsigned int rowI=0;rowI<found.size()++第I行)cout<<找到[rowI]<<endl;}//如果只需要第一个匹配项,请使用FindFirst()unsigned int foundIndex=isTableP->FindFirst(searchValues,searchCols);if(foundIndex==isTableP->GetNumRows()){//未找到匹配项。}其他的{//找到第一个匹配项。cout<<“在行索引处发现第一个匹配项:”<<foundIndex<<endl;}

   /***示例7:如何删除列。*///删除第二列isTableP->DeleteColumn(“第二列”);//现在这个表是3x2(三行两列)
   /***示例8:如何删除行。*///删除第二行(行索引为1)isTableP->DeleteRow(1);//请注意,第三行的行索引(行索引2)早于//删除现在变成1//现在表格是2x2(两行两列)

   /***示例9:如何克隆表(复制到另一个表)。*///将一个表的内容复制到第二个表中//这两个表的名称、列名、行数和//内容相同。ISTable(IST表格)*isTableCopyP=新ISTable(IST表格)();(*是表复制P)=(*是表格P);//打印两个表cout<<“原始表格:”<<endl<<(*isTableP)<<end1;cout<<“克隆表:”<<endl<<(*isTableCopyP)<<end1;