Question
NEED HELP IMPLEMENTING THE REST // Few comments describing the class Points2 #ifndef CSCI335_HOMEWORK1_POINTS2_H_ #define CSCI335_HOMEWORK1_POINTS2_H_ #include #include #include #include #include namespace teaching_project { //
NEED HELP IMPLEMENTING THE REST // Few comments describing the class Points2
#ifndef CSCI335_HOMEWORK1_POINTS2_H_ #define CSCI335_HOMEWORK1_POINTS2_H_
#include
namespace teaching_project { // Place comments that provide a brief explanation of the class, // and its sample usage. template
// Zero-parameter constructor. // Set size to 0. Points2() { size_ = 0; }
// Copy-constructor. Points2(const Points2 &rhs) {sequence_ = new std::array
// Copy-assignment. If you have already written // the copy-constructor and the move-constructor // you can just use: // { // Points2 copy = rhs; // std::swap(*this, copy); // return *this; // } Points2& operator=(const Points2 &rhs) { Points2 copy = rhs; std::swap(*this, copy); return *this; }
// Move-constructor. Points2(Points2 &&rhs){ *this = std::move(rhs);
}
// Move-assignment. // Just use std::swap() for all variables. Points2& operator=(Points2 &&rhs) { *this = std::move(rhs); return *this; }
~Points2() { delete[] sequence_; }
// End of big-five.
// One parameter constructor. Points2(const std::array
// Read a chain from standard input. void ReadPoints2() { // Part of code included (without error checking). std::string input_line; std::getline(std::cin, input_line); std::stringstream input_stream(input_line); if (input_line.empty()) return; // Read size of sequence (an integer). int size_of_sequence; input_stream >> size_of_sequence; // Allocate space for sequence. // Add code here. Object token; for (int i = 0 ;input_stream >> token; ++i) { int x, y; std::cin >> x >> y; sequence_[i].fill(x); sequence_[i].fill(y); // Read coordinates. // Fill sequence_ here. } }
size_t size() const { return size_; }
// @location: an index to a location in the sequence. // @returns the point at @location. // const version. // abort() if out-of-range. const std::array
// @c1: A sequence. // @c2: A second sequence. // @return their sum. If the sequences are not of the same size, append the // result with the remaining part of the larger sequence. friend Points2 operator+(const Points2 &c1, const Points2 &c2) { }
// Overloading the << operator. friend std::ostream &operator<<(std::ostream &out, const Points2 &some_points2) { } private: // Sequence of points. std::array
};
} // namespace teaching_project #endif // CSCI_335_HOMEWORK1_POINTS2_H_
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started