C++ multimap -find


 
Thread Tools Search this Thread
Top Forums Programming C++ multimap -find
# 1  
Old 04-06-2008
C++ multimap -find

Hello
I need a sample program using multimap


class People
{
public:
char CHR_NM1[5];
char CHR_NM2[5];
char CHR_CD1[6];
char CHR_CD2[6];
char VL1[12];
char VL2[12];
char MODULE_NUM[4];
};

}
multimap<string, People>& peopleMap

I need to find a pair with a key BRAND010846
peopleMap.find("BRAND010846")

something like the above. I want to use find to find the value using a key.

Can any one help me in getting a sample program

REgards
Dhanamurthy
# 2  
Old 04-07-2008
here is a sample code

Code:
#include <iostream>
#include <map>
#include <string>
using namespace std;

int main()
{
  multimap<string, string> names;
  string n;

  names.insert(pair<string, string>("key1", "F"));
  names.insert(pair<string, string>("key2", "T"));
  names.insert(pair<string, string>("key3", "R"));

  multimap<string, string>::iterator p;

  cout << "Enter last name: ";
  cin >> n;

  p = names.find(n);
  if(p != names.end()) { // found a name
    do {
      cout << n << ", " << p->second;
      cout << endl;
      p++;
    } while (p != names.upper_bound(n));
  }
  else{
    cout << "Name not found.\n";
  }
  return 0;
}

# 3  
Old 04-07-2008
Hi
This works in LInux but not in HP-UX.
I am using aCC compiler using HP-UX.

Can you help me in rectifying the same code in HP-UX.

I am getting the below error message.


Error 226: "map3.cpp", line 13 # No appropriate function found for call of 'insert'. Last viable candidate was
"rb_tree<basic_string<char,string_char_traits<char>,allocator>,pair<const
basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits<char>,all ocator>
>,select1st<pair<const
basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits<char>,all ocator>
>,basic_string<char,string_char_traits<char>,allocator> >,less<basic_string<char,string_char_traits<char>,allocator>
>,allocator>::iterator
multimap<basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits< char>,allocator>,less
<basic_string<char,string_char_traits<char>,allocator> >,allocator>::insert(const pair<const
basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits<char>,all ocator> > &)"
["/opt/aCC/include/map", line 497]. Argument of type 'struct
pair<basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits<char >,allocator> >'
could not be converted to 'const pair<const
basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits<char>,all ocator> > &'.
names.insert(pair<string, string>("key1", "F"));
^^^^^^
Error 226: "map3.cpp", line 14 # No appropriate function found for call of 'insert'. Last viable candidate was
"rb_tree<basic_string<char,string_char_traits<char>,allocator>,pair<const
basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits<char>,all ocator>
>,select1st<pair<const
basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits<char>,all ocator>
>,basic_string<char,string_char_traits<char>,allocator> >,less<basic_string<char,string_char_traits<char>,allocator>
>,allocator>::iterator
multimap<basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits< char>,allocator>,less
<basic_string<char,string_char_traits<char>,allocator> >,allocator>::insert(const pair<const
basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits<char>,all ocator> > &)"
["/opt/aCC/include/map", line 497]. Argument of type 'struct
pair<basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits<char >,allocator> >'
could not be converted to 'const pair<const
basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits<char>,all ocator> > &'.
names.insert(pair<string, string>("key2", "T"));
^^^^^^
Error 226: "map3.cpp", line 15 # No appropriate function found for call of 'insert'. Last viable candidate was
"rb_tree<basic_string<char,string_char_traits<char>,allocator>,pair<const
basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits<char>,all ocator>
>,select1st<pair<const
basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits<char>,all ocator>
>,basic_string<char,string_char_traits<char>,allocator> >,less<basic_string<char,string_char_traits<char>,allocator>
>,allocator>::iterator
multimap<basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits< char>,allocator>,less
<basic_string<char,string_char_traits<char>,allocator> >,allocator>::insert(const pair<const
basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits<char>,all ocator> > &)"
["/opt/aCC/include/map", line 497]. Argument of type 'struct
pair<basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits<char >,allocator> >'
could not be converted to 'const pair<const
basic_string<char,string_char_traits<char>,allocator>,basic_string<char,string_char_traits<char>,all ocator> > &'.
names.insert(pair<string, string>("key3", "R"));
^^^^^^
Error (future) 690: "map3.cpp", line 34 # Nonempty source files must end with a newline that is not preceded by a backslash.
Warning: 1 future errors were detected and ignored. Add a '+p' option to detect and fix them before they become fatal errors in a future release. Behavior of this ill-formed program is not guaranteed to match that of a well-formed program
$
# 4  
Old 04-09-2008
Unfortunately I don't have access to HP box
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Find string1, when true find string2 in reverse direction

Hello, This is a bit complicated for me. My scenario in MyFile: Search string1, When string1 is found, grep the line containing string1, go back over that line in upward direction and grep the first line containing string2. Here is an example: MyFile His email address... (17 Replies)
Discussion started by: baris35
17 Replies

2. Shell Programming and Scripting

How to find a file with a specific pattern for current sysdate & upon find email the details?

I need assistance with following requirement, I am new to Unix. I want to do the following task but stuck with file creation date(sysdate) Following is the requirement I need to create a script that will read the abc/xyz/klm folder and look for *.err files for that day’s date and then send an... (4 Replies)
Discussion started by: PreetArul
4 Replies

3. Shell Programming and Scripting

find: missing argument to `-exec' while redirecting using find in perl

Hi Friends, Please help me to sort out this problem, I am running this in centos o/s and whenever I run this script I am getting "find: missing argument to `-exec' " but when I run the same code in the command line I didn't find any problem. I am using perl script to run this ... (2 Replies)
Discussion started by: ramkumarselvam
2 Replies

4. Shell Programming and Scripting

How to use grep & find command to find references to a particular file

Hi all , I'm new to unix I have a checked project , there exists a file called xxx.config . now my task is to find all the files in the checked out project which references to this xxx.config file. how do i use grep or find command . (2 Replies)
Discussion started by: Gangam
2 Replies

5. Linux

Simplified find command to find multiple file types

Hi, I'm using the following command to find the multiple requierd file types and its working fine find . -name "*.pl" -o -name "*.pm" -o -name "*.sql" -o -name "*.so" -o -name "*.sh" -o -name "*.java" -o -name "*.class" -o -name "*.jar" -o -name "*.gz" -o -name "*.Z" -type f Though... (2 Replies)
Discussion started by: vickramshetty
2 Replies

6. Programming

find in multimap within multimap

Hi, I am trying to use multimap of multimap, because i would like to have multiple keys like multimap = value. this is happening if i use map. But when i use multimap of multimap, i have to use equal_range() to find the key in the first multimap then i am getting all the values from the second... (0 Replies)
Discussion started by: rameshmelam
0 Replies

7. UNIX for Dummies Questions & Answers

how to find a file named vijay in a directory using find command

I need to find whether there is a file named vijay is there or not in folder named "opt" .I tried "ls *|grep vijay" but it showed permission problem. so i need to use find command (6 Replies)
Discussion started by: amirthraj_12
6 Replies

8. Shell Programming and Scripting

Little bit weired : Find files in UNIX w/o using find or where command

Yes , I have to find a file in unix without using any find or where commands.Any pointers for the same would be very helpful as i am beginner in shell scritping and need a solution for the same. Thanks in advance. Regards Jatin Jain (10 Replies)
Discussion started by: jatin.jain
10 Replies

9. Shell Programming and Scripting

command find returned bash: /usr/bin/find: Argument list too long

Hello, I create a file touch 1201093003 fichcomp and inside a repertory (which hava a lot of files) I want to list all files created before this file : find *.* \! -maxdepth 1 - newer fichcomp but this command returned bash: /usr/bin/find: Argument list too long but i make a filter all... (1 Reply)
Discussion started by: yacsil
1 Replies
Login or Register to Ask a Question