subject

Create and test a class called Points2D. This class describes a sequence of 2D points (i. e. points in the 2D-plane). For example (1, 3), (4, 5) is a sequence of two points, where each coordinate is an integer. (1.2, 3.4), (5.6, 10.1), (11.1, 12.0) is a sequence of three points where each coordinate is a double. A sequence can have any size. An empty sequence has size 0. The purpose of this assignment is to have you create a Points2D class from scratch with limited help from the STL. Since Points2D can have arbitrary size, you should use pointers. The private data members should be:
size_t size; std::array *sequence_;
Object is the template type parameter (i. e. int, double, etc.). An initial piece of code with the structure of the class is provided. Do not change the data representation (for instance do not use a vector or list to represent the sequence_).
Pay special attention to Mark Allen Weiss's "big five" in the textbook: the destructor, copy constructor, copy assignment operator, move constructor and move assignment operator.
Included are the two files (points2d. h, [login to view URL]) you will need, as well as the Makefile. Do not modify the Makefile or the file names. Do not modify the [login to view URL] file except by changing or adding include files if needed. You can comment in the main file the parts you didn’t complete. The points2d. h file is not complete. In the file it is explained where to provide changes. You will be provided with a sample input file [login to view URL] and it is explained at the end of this document how to use it.
This assignment will help you revisit constructors, destructors, overloading of operators, and templates. Follow a consistent C++ coding style, for instance
Implement the "big five". Add the output stream << operator.
Demonstrate that you are able to read and write data correctly by including the following code in the main file. The code is already provided for you in the main file. You can comment parts of it as you are testing your implementation. For full credit all functions should work.
void TestPart1() {
Points2D a, b; // Two empty Points2 are created.
cout << [login to view URL]() << " " << [login to view URL]() << endl; // yields 0 0.
const array a_point2d{{7, 10}};
Points2D d{a_point2d}; // Sequence (7, 10) should be created. cout << d; // Should just print (7, 10)
cout << "Enter a sequence of points (integer)" << endl; [login to view URL](); // User enters a set of points in the form:
// 3 7 4 3 2 1 10
// 3 specifies number of points. Points are the pairs // (7, 4) (3, 2) and (1, 10)
cout << "Output1: " << endl;
cout << a; // Output should be what user entered.
cout << "Enter a sequence of points (integer)" << endl; [login to view URL](); // Enter another sequence.
cout << "Output2: " << endl;
cout << b;
Points2D c{a}; // Calls copy constructor for c.
cout << "After copy constructor1 c{a}: " << endl;
cout << c;
cout << a;
a = b; // Should call the copy assignment operator for a. cout << "After assignment a = b" << endl;
cout << a;
Points2 e = move(c); // Move constructor for d. cout << "After e = move(c) " << endl;
cout << e;
cout << c;
cout << "After a = move(e) " << endl;
a = move(e); // Move assignment operator for a.
cout << a;
cout << e;
}

ansver
Answers: 2

Another question on Computers and Technology

question
Computers and Technology, 21.06.2019 22:00
Which is produced by the endocrine system to control how cells and organs function
Answers: 2
question
Computers and Technology, 22.06.2019 05:30
The total revenues for a company are $150,223 and the total expenses were 125,766. if you are calculating the net income, which of these spreadsheets would you use? insert a spreadsheet with $150,223 in cell b2 and 125, 766 in cell b3. enter a formula =b2-b3. the formula should be showing in the formula bar. insert a spreadsheet with $150,223 in cell b2 and 125, 766 in cell b3. enter a formula =b2+b3. the formula should be showing in the formula bar. insert a spreadsheet with $150,223 in cell b2 and 125, 766 in cell b3. enter a formula =b2/b3. the formula should be showing in the formula bar. insert a spreadsheet with $150,223 in cell b2 and 125, 766 in cell b3. enter a formula =b2*b3. the formula should be showing in the formula bar.
Answers: 3
question
Computers and Technology, 23.06.2019 06:30
Who can provide you with a new password when you have forgotten your old one? your provide you with a new password in case you forget your old one.
Answers: 3
question
Computers and Technology, 24.06.2019 00:20
Describe a data structures that supports the stack push and pop operations and a third operation findmin, which returns the smallest element in the data structure, all in o(1) worst-case time.
Answers: 2
You know the right answer?
Create and test a class called Points2D. This class describes a sequence of 2D points (i. e. points...
Questions
question
Mathematics, 05.07.2019 21:00
question
Mathematics, 05.07.2019 21:00
question
Mathematics, 05.07.2019 21:00
question
Mathematics, 05.07.2019 21:00
Questions on the website: 13722361