Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/136.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Abaqus ODB C和x2B访问零件+;美国石油学会 我使用的是ABAQUS ODBC C++ API。我正在编写一个包装器来可视化.odb文件_C++_File Io - Fatal编程技术网

使用Abaqus ODB C和x2B访问零件+;美国石油学会 我使用的是ABAQUS ODBC C++ API。我正在编写一个包装器来可视化.odb文件

使用Abaqus ODB C和x2B访问零件+;美国石油学会 我使用的是ABAQUS ODBC C++ API。我正在编写一个包装器来可视化.odb文件,c++,file-io,C++,File Io,以下代码将名为“part-1”的零件加载到对象part odb_Odb& odb = openOdb( filename.c_str() ); odb_PartRepository& pr = odb.parts(); odb_Part& part = pr["PART-1"]; 如果您知道一个部件的名称,那么这段代码非常好,但是当我不知道它们的名称时,如何访问这些部件呢?为什么API的编写者会限制我们通过字符串进行索引?经过大量搜索,我找到了以下解决方案 参见本文件第

以下代码将名为“part-1”的零件加载到对象
part

odb_Odb& odb = openOdb( filename.c_str() );
odb_PartRepository& pr = odb.parts();
odb_Part& part = pr["PART-1"];

如果您知道一个部件的名称,那么这段代码非常好,但是当我不知道它们的名称时,如何访问这些部件呢?为什么API的编写者会限制我们通过字符串进行索引?

经过大量搜索,我找到了以下解决方案

参见本文件第10.10.5节“读取结果数据”:

必须使用存储库迭代器来提取可能的密钥

// for example:
odb_StepRepositoryIT stepIter( odb.steps() );
for (stepIter.first(); !stepIter.isDone(); stepIter.next())
{
    cout << stepIter.currentKey().CStr() << endl;
}
//例如:
odb_StepRepositoryIT stepIter(odb.steps());
for(stepIter.first();!stepIter.isDone();stepIter.next())
{
库特