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 7808375
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 2, 20262026-06-02T03:07:04+00:00 2026-06-02T03:07:04+00:00

I have the following class which stores pairs of dates and prices: #include <vector>

  • 0

I have the following class which stores pairs of dates and prices:

#include <vector>
#include <utility>
#include "boost/date_time/gregorian/gregorian.hpp"

using std::vector;
using std::pair;
using boost::gregorian::date;

class A {
private:
    vector<pair<date*, float> > prices;
public:
    A(pair<date*, float> p[], int length) : prices(p, p + length) { }
};

An object of this class is created and filled with data with the following function:

A loadData() {
    // create price array
    pair<date*, float> *prices = new pair<date*, float>[10];

    // fill array with data (normally read from a file)
    for (int i = 0; i < 10; ++i) {
        prices[i].first = new date(2012, 4, 19);
        prices[i].second = 100;
    }

    // create the object using the price array
    A result(prices, 10);

    // delete the price array (its contents have been moved to result's vector)
    delete[] prices;

    return result;
}

Given this setup, where would I call delete to free the memory allocated when creating each date object in the loadData function? My first guess was to delete the dates in A’s deconstructor, but what if the dates passed to the constructor are to be used elsewhere outside of class A?

Any help with this would be much appreciated.

  • 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-06-02T03:07:06+00:00Added an answer on June 2, 2026 at 3:07 am

    Unless you have very good reason to do so, forget about the pointers:

    A loadData() {
        // create price array
        vector<pair<date, float> > prices;
    
        // fill array with data (normally read from a file)
        for (int i = 0; i < 10; ++i) {
            prices.push_back(make_pair(date(2012, 4, 19), 100));
        }
    
        // create and return the object using the price array
        return result(prices);
    
    }
    

    and modify the class accordingly:

    class A {
    private:
        vector<pair<date, float> > prices;
    public:
        explicit A(const std::vector<pair<date, float> >& p) : prices(p) { }
    };
    

    Then you don’t have to worry about memory management. The compiler will make optimizations such that the code above performs less copies than you would imagine.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have the following class which stores a list of object arrays. public class
I have the following class which uses BinaryReader internally and implements IDisposable. class DisposableClass
I have the following class which handles my user logged in / logged out
I have the following asynctask class which is not inside the activity. In the
I have the following javascript class which I am trying to pass to an
In Java I have created the following class which extends ImageView to create a
I have the following tricky problem: I have implemented a (rather complicated) class which
Let's say I have the following class hierarchy: TaskViewer inherits from ListViewer<Task> which in
I have a class which has the following constructor public DelayCompositeDesigner(DelayComposite CompositeObject) { InitializeComponent();
I have a class which loads an xml file using the following: Path.Combine( AppDomain.CurrentDomain.BaseDirectory,

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.