One problem with dynamic arrays is that they don't carry around their size. Create a structure, DynArray which uses a unique pointer for a dynamic array (data), and an int for the size and capacity.

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
One problem with dynamic arrays is that they don't carry around their size. Create a structure,
DynArray which uses a unique pointer for a dynamic array (data), and an int for the
size and capacity.
dynarray.h
#ifndef DYNARRAY_H
#define DYNARRAY_H
1
2
3
4
#include <iostream>
#include <memory>
7
// Define the DynArray structure here
8
std::ostream& operator<<(std::ostream& out, const DynArray& a);
std::istream& operator>>(std::istream& in, DynArray& a);
DynArray makeDA (int capacity);
10
11
12
13
#endif
memory.cpp
1
#include <iostream>
#include <string>
#include "dynarray.h"
using namespace std;
2
3
4
int main()
{
cout « "Array capacity: ";
int capacity;
cin >> capacity;
7
8
9
10
11
auto a = makeDA (capacity);
cout « "Enter up to " <« capacity « " numbers: ";
cin >> a;
12
13
14
15
16
cout « "a->" « a « endl;
17
}
Transcribed Image Text:One problem with dynamic arrays is that they don't carry around their size. Create a structure, DynArray which uses a unique pointer for a dynamic array (data), and an int for the size and capacity. dynarray.h #ifndef DYNARRAY_H #define DYNARRAY_H 1 2 3 4 #include <iostream> #include <memory> 7 // Define the DynArray structure here 8 std::ostream& operator<<(std::ostream& out, const DynArray& a); std::istream& operator>>(std::istream& in, DynArray& a); DynArray makeDA (int capacity); 10 11 12 13 #endif memory.cpp 1 #include <iostream> #include <string> #include "dynarray.h" using namespace std; 2 3 4 int main() { cout « "Array capacity: "; int capacity; cin >> capacity; 7 8 9 10 11 auto a = makeDA (capacity); cout « "Enter up to " <« capacity « " numbers: "; cin >> a; 12 13 14 15 16 cout « "a->" « a « endl; 17 }
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Randomized Select Algorithm
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education