本文整理汇总了C++中HashMap::GetFirst方法的典型用法代码示例。如果您正苦于以下问题:C++ HashMap::GetFirst方法的具体用法?C++ HashMap::GetFirst怎么用?C++ HashMap::GetFirst使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类HashMap
的用法示例。
在下文中一共展示了HashMap::GetFirst方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main( int argc, char * argv[] )
{
Process process;
Session session;
HashMap hashmap;
string fname = "/cpp_hashmap_getfirst";
string hname = fname + "/test";
const char * key = "My Key";
const char * data = "My Data";
char buffer[50];
char buffKey[50];
uint32_t dataLength, keyLength;
psoObjectDefinition mapDef = { PSO_HASH_MAP, 0, 0, 0 };
psoKeyFieldDefinition keyDef = { "MyKey", PSO_KEY_VARBINARY, 20 };
psoFieldDefinition fields[1] = {
{ "Field_1", PSO_VARCHAR, {10} }
};
try {
if ( argc > 1 ) {
process.Init( argv[1], argv[0] );
}
else {
process.Init( "10701", argv[0] );
}
}
catch( pso::Exception exc ) {
cerr << "Test failed in init phase, error = " << exc.Message() << endl;
cerr << "Is the server running?" << endl;
return 1;
}
try {
session.Init();
session.CreateFolder( fname );
DataDefinition dataDefObj( session,
"cpp_hashmap_getfirst",
PSO_DEF_PHOTON_ODBC_SIMPLE,
(unsigned char *)fields,
sizeof(psoFieldDefinition) );
KeyDefinition keyDefObj( session,
"cpp_hashmap_getfirst",
PSO_DEF_PHOTON_ODBC_SIMPLE,
(unsigned char *)&keyDef,
sizeof(psoKeyFieldDefinition) );
session.CreateMap( hname,
mapDef,
dataDefObj,
keyDefObj );
hashmap.Open( session, hname );
hashmap.Insert( key, 6, data, 7 );
}
catch( pso::Exception exc ) {
cerr << "Test failed - line " << __LINE__ << ", error = " << exc.Message() << endl;
return 1;
}
// Invalid arguments to tested function.
try {
hashmap.GetFirst( NULL, 50, buffer, 50, keyLength, dataLength );
// Should never come here
cerr << "Test failed - line " << __LINE__ << endl;
return 1;
}
catch( pso::Exception exc ) {
if ( exc.ErrorCode() != PSO_NULL_POINTER ) {
cerr << "Test failed - line " << __LINE__ << ", error = " << exc.Message() << endl;
return 1;
}
}
try {
hashmap.GetFirst( buffKey, 2, buffer, 50, keyLength, dataLength );
// Should never come here
cerr << "Test failed - line " << __LINE__ << endl;
return 1;
}
catch( pso::Exception exc ) {
if ( exc.ErrorCode() != PSO_INVALID_LENGTH ) {
cerr << "Test failed - line " << __LINE__ << ", error = " << exc.Message() << endl;
return 1;
}
}
try {
hashmap.GetFirst( buffKey, 50, NULL, 50, keyLength, dataLength );
// Should never come here
cerr << "Test failed - line " << __LINE__ << endl;
return 1;
}
catch( pso::Exception exc ) {
if ( exc.ErrorCode() != PSO_NULL_POINTER ) {
cerr << "Test failed - line " << __LINE__ << ", error = " << exc.Message() << endl;
return 1;
}
}
//.........这里部分代码省略.........