本文整理汇总了C++中HashMap::Insert方法的典型用法代码示例。如果您正苦于以下问题:C++ HashMap::Insert方法的具体用法?C++ HashMap::Insert怎么用?C++ HashMap::Insert使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类HashMap
的用法示例。
在下文中一共展示了HashMap::Insert方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: StartElementHandler
void XmlParseMaster::StartElementHandler(void *userData, const XML_Char *name, const XML_Char **atts)
{
SharedData * sharedData = reinterpret_cast<SharedData*>(userData);
XmlParseMaster* parseMaster = sharedData->GetXmlParseMaster();
if (parseMaster)
{
//Populate a hashmap with the attributes the Epact gives us
HashMap<std::string, std::string> attributeHashMap;
for (std::uint32_t i = 0; atts[i] != '\0'; i += 2)
{
bool inserted;
attributeHashMap.Insert(std::string(atts[i]),std::string(atts[i+1]),inserted);
}
sharedData->IncrementDepth();
for (auto it = parseMaster->mParseHelpers.begin(); it != parseMaster->mParseHelpers.end(); ++it)
{
std::string stringName = std::string(name);
if ((*it)->StartElementHandler(sharedData, stringName, attributeHashMap))
{
break;
}
}
}
}
示例2: main
/*
* Main Contains Menu
*/
int main()
{
HashMap hash;
int key, value;
int choice;
while(1)
{
cout<<"\n----------------------"<<endl;
cout<<"Operations on Hash Table"<<endl;
cout<<"\n----------------------"<<endl;
cout<<"1.Insert element into the table"<<endl;
cout<<"2.Search element from the key"<<endl;
cout<<"3.Delete element at a key"<<endl;
cout<<"4.Exit"<<endl;
cout<<"Enter your choice: ";
cin>>choice;
switch(choice)
{
case 1:
cout<<"Enter element to be inserted: ";
cin>>value;
cout<<"Enter key at which element to be inserted: ";
cin>>key;
hash.Insert(key, value);
break;
case 2:
cout<<"Enter key of the element to be searched: ";
cin>>key;
if(hash.Search(key) == -1)
{
cout<<"No element found at key "<<key<<endl;
continue;
}
else
{
cout<<"Element at key "<<key<<" : ";
cout<<hash.Search(key)<<endl;
}
break;
case 3:
cout<<"Enter key of the element to be deleted: ";
cin>>key;
hash.Remove(key);
break;
case 4:
exit(1);
default:
cout<<"\nEnter correct option\n";
}
}
return 0;
}
示例3: main
//.........这里部分代码省略.........
sum += *it;
++count;
}
int usec = (int)t.ElapsedUSec();
printf("Size: %d capacity: %d\n", vec.Size(), vec.Capacity());
printf("Counted vector items %d, sum: %d\n", count, sum);
printf("Processing took %d usec\n", usec);
}
{
printf("\nTesting List\n");
HiresTimer t;
List<int> list;
SetRandomSeed(0);
for (size_t i = 0; i < NUM_ITEMS; ++i)
list.Push(Rand());
int sum = 0;
int count = 0;
for (auto it = list.Begin(); it != list.End(); ++it)
{
sum += *it;
++count;
}
int usec = (int)t.ElapsedUSec();
printf("Size: %d\n", list.Size());
printf("Counted list items %d, sum: %d\n", count, sum);
printf("Processing took %d usec\n", usec);
printf("\nTesting List insertion\n");
List<int> list2;
List<int> list3;
for (int i = 0; i < 10; ++i)
list3.Push(i);
list2.Insert(list2.End(), list3);
for (auto it = list2.Begin(); it != list2.End(); ++it)
printf("%d ", *it);
printf("\n");
}
{
printf("\nTesting String\n");
HiresTimer t;
String test;
for (size_t i = 0; i < NUM_ITEMS/4; ++i)
test += "Test";
String test2;
test2.AppendWithFormat("Size: %d capacity: %d\n", test.Length(), test.Capacity());
printf(test2.CString());
test2 = test2.ToUpper();
printf(test2.CString());
test2.Replace("SIZE:", "LENGTH:");
printf(test2.CString());
int usec = (int)t.ElapsedUSec();
printf("Processing took %d usec\n", usec);
}
{
printf("\nTesting HashSet\n");
HiresTimer t;
size_t found = 0;
unsigned sum = 0;
HashSet<int> testHashSet;
srand(0);
found = 0;
sum = 0;
printf("Insert, search and iteration, %d keys\n", NUM_ITEMS);
示例4: 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;
}
}
//.........这里部分代码省略.........
示例5: uploadDB
// Function for uploading data to hashmap
int uploadDB(string fileOpen) {
// Initialization Data in Loop
ifstream file(fileOpen.c_str()); // Twitter File
if (!file.is_open()){
cerr << "Failed to open file. Please try again\n\n" << endl;
File_valid();
return (EXIT_FAILURE);
}
for (string line; (getline(file, line));)
{
// User Text From Twitter
const size_t start_pos_txt = line.find("\"text\":");
string temp1 = line.substr(start_pos_txt + 8);
// User Location From Twitter
const size_t start_pos_loc = line.find("\"location\":");
string temp2 = line.substr(start_pos_loc + 12);
// User Number of Status From Twitter
const size_t start_pos_SC = line.find("\"statuses_count\":");
string temp3 = line.substr(start_pos_SC + 17);
// User ID From Twitter
const size_t start_pos_Id = line.find("\"user\":{");
string temp4 = line.substr(start_pos_Id + 8);
const size_t stop_pos4 = temp4.find("}");
string t_id = temp4.substr(0, stop_pos4);
istringstream in(t_id);
string user_line;
string t_user_id;
int t_userID;
while (getline(in, user_line))
{
const size_t find_id = user_line.find("\"id\":");
string pos_id = user_line.substr(find_id + 5);
const size_t stop_pos_id2 = pos_id.find(",\"");
t_user_id = pos_id.substr(0, stop_pos_id2);
//t_userID = atoi(t_user_id.c_str());
}
// Finding Data
const size_t start_pos_nm = line.find("\"name\":");
string temp5 = line.substr(start_pos_nm + 8);
const size_t start_pos_fc = line.find("\"followers_count\":");
string temp6 = line.substr(start_pos_fc + 18);
const size_t start_pos_fri_c = line.find("\"friends_count\":");
string temp7 = line.substr(start_pos_fri_c + 16);
// Stop Positions
const size_t stop_pos1 = temp1.find("\"");
const size_t stop_pos2 = temp2.find("\"");
const size_t stop_pos3 = temp3.find(",\"");
const size_t stop_pos5 = temp5.find("\"");
const size_t stop_pos6 = temp6.find("\"");
const size_t stop_pos7 = temp7.find("\"");
string t_text = temp1.substr(0, stop_pos1);
string t_loc = temp2.substr(0, stop_pos2);
string t_status_c = temp3.substr(0, stop_pos3);
int t_status = atoi(t_status_c.c_str());
string t_name = temp5.substr(0, stop_pos5);
string t_follow_c = temp6.substr(0, stop_pos6);
int t_follow = atoi(t_follow_c.c_str());
string t_frnd_c = temp7.substr(0, stop_pos7);
int t_frnd = atoi(t_frnd_c.c_str());
// Inserting Data in hashtable
access.Tuser_id = t_user_id;
access.Tuser_name = t_name;
access.Tuser_txt = t_text;
access.Tuser_loc = t_loc;
access.Tuser_frndC = t_frnd;
access.Tuser_statusC = t_status;
access.Tuser_followC = t_follow;
hashMap.Insert(t_user_id, access);
}
file.close();
User_Input();
}