Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6228181
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 24, 20262026-05-24T09:20:41+00:00 2026-05-24T09:20:41+00:00

I’ve two vectors having pointers to my custom class object. The pointers in these

  • 0

I’ve two vectors having pointers to my custom class object.
The pointers in these two vectors don’t point to the same object, but the values stored in the objects are same.

My custom class structure is:


Class Item
{
   string ItemId;
   string ItemDescription;
   float ItemPrice;
}


The first vector(V1) is having n entries and the second vector(V2) is having m entries (n>m).

I've to perform two operations:

  • Get a vector which has common objects in both V1 and V2. By common, I mean to say that the ItemId for the elements is same. (Can be referred as Intersection of V1 and V2).

  • Get a vector which has the elements which are not present in V2. (Can be referred as V1-V2).

    How to do this in an efficient manner??

    • 1 1 Answer
    • 0 Views
    • 0 Followers
    • 0
    Share
    • Facebook
    • Report

    Leave an answer
    Cancel reply

    You must login to add an answer.

    Forgot Password?

    Need An Account, Sign Up Here

    1 Answer

    • Voted
    • Oldest
    • Recent
    • Random
    1. Editorial Team
      Editorial Team
      2026-05-24T09:20:42+00:00Added an answer on May 24, 2026 at 9:20 am

      Here is example of how to do it using STL set_intersection and set_difference to get what you wanted:

      class Item
      {
      public:
          Item(int i):ItemId(i){}
      
         int ItemId;
         string ItemDescription;
         float ItemPrice;
      
         bool operator<(const Item& rhs)
         {
             return ItemId < rhs.ItemId;
         }
         bool operator==(const Item& rhs)
         {
             return ItemId == rhs.ItemId;
         }
      };
      
      int main()
      {
          std::vector<Item> myvec1;
          myvec1.push_back(Item(1));
          myvec1.push_back(Item(2));
          myvec1.push_back(Item(1));
          myvec1.push_back(Item(10));
          myvec1.push_back(Item(5));
          myvec1.push_back(Item(3));
          myvec1.push_back(Item(10));
      
      
          std::vector<Item> myvec2;
          myvec2.push_back(Item(10));
          myvec2.push_back(Item(1));
          myvec2.push_back(Item(10));
          myvec2.push_back(Item(1));
          myvec2.push_back(Item(3));
      
          std::sort(myvec1.begin(), myvec1.end());
          std::sort(myvec2.begin(), myvec2.end());
      
          myvec1.erase(std::unique(myvec1.begin(), myvec1.end()), myvec1.end());
          myvec2.erase(std::unique(myvec2.begin(), myvec2.end()), myvec2.end());
      
          std::vector<Item> myvec3; //Intersection of V1 and V2
          std::vector<Item> myvec4; //V1-V2
          set_intersection(myvec1.begin(),myvec1.end(), myvec2.begin(),myvec2.end(), std::back_inserter(myvec3)); //myvec3: 1 3 10
          set_difference(myvec1.begin(),myvec1.end(), myvec2.begin(),myvec2.end(), std::back_inserter(myvec4));   //myvec4: 2 5 
      }
      
      • 0
      • Reply
      • Share
        Share
        • Share on Facebook
        • Share on Twitter
        • Share on LinkedIn
        • Share on WhatsApp
        • Report

    Sidebar

    Related Questions

    link Im having trouble converting the html entites into html characters, (&# 8217;) i
    I want to count how many characters a certain string has in PHP, but
    Seemingly simple, but I cannot find anything relevant on the web. What is the
    I have a French site that I want to parse, but am running into
    We're building an app, our first using Rails 3, and we're having to build
    I'm parsing an RSS feed that has an &#8217; in it. SimpleXML turns this
    I have a bunch of posts stored in text files formatted in yaml/textile (from
    I need to clean up various Word 'smart' characters in user input, including but
    i got an object with contents of html markup in it, for example: string
    Basically, what I'm trying to create is a page of div tags, each has

    Explore

    • Home
    • Add group
    • Groups page
    • Communities
    • Questions
      • New Questions
      • Trending Questions
      • Must read Questions
      • Hot Questions
    • Polls
    • Tags
    • Badges
    • Users
    • Help
    • SEARCH

    Footer

    © 2021 The Archive Base. All Rights Reserved
    With Love by The Archive Base

    Insert/edit link

    Enter the destination URL

    Or link to existing content

      No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.