Write a class called Box that has three double fields called height, width and l
ID: 3665236 • Letter: W
Question
Write a class called Box that has three double fields called height, width and length. The class should have set methods for each field. It should have a three-parameter constructor that takes three doubles and passes them to the set methods to initialize the fields of the Box. It should have a default constructor that uses the set methods to initialize each field to 1. It should have a method that calculates and returns the volume of the Box and a method that calculates and returns the surface area of the Box.
The class declaration (interface) and the function definitions (implementation) must be in separate files - the interface or "header" file has a .hpp extension and the implementation has a .cpp extension. All data members should be private.
Your functions should have the following names:
- setHeight
- setWidth
- setLength
- getVolume
- getSurfaceArea
The files must be named: Box.hpp and Box.cpp
About using multiple files:
Box.hpp should have "include guards" as discussed on page 447 (use "BOX_HPP").
Box.cpp needs to #include Box.hpp. When you include your own .hpp files (header files), put double quotes around them instead of angled brackets. (You should only #include .hpp files, not .cpp files.)
When testing your program with your own main method, put it in a separate file (this is the "client" code) and give it a name with a .cpp extension.
Your main method also needs to #include Box.hpp.
If you named the file with your main method "boxMain.cpp", then you can compile your program with "g++ Box.cpp boxMain.cpp -o box".
--------------------------------------------------------------------------------------------------------------
Just wondering how a tutor would go about this? I am currently trying to code this program with a Vim plug-in using Atom text editor. The language I'm using is C++.
-Thanks!
Explanation / Answer
file name Box.hpp
file name main.cpp
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.