Question

Assuming the following class declaration: class   Course {        private:               string grade_;        &n

Assuming the following class declaration:

class   Course {

       private:

              string grade_;

              int       units_;

        public:

             Course ( );

             Course ( string grade, int units);

              ~Course ( );

              string get_grade ( ) const ;

              int       get_units ( ) const;

};

NOTE:

  • Class definitions are not provided but you may assume they're properly defined.
  • Variable names used in your answers must follow our stated naming convention especially for pointer names.

Write a fragment of code (do not write a program) to:

1. Declare a pointer to a Course object and properly initialize it.

2. This is a separate statement from the declaration statement above: Dynamically create/instantiate a Course object ( with parameters: grade == "A-" and units==5) and assign it to the pointer above.

3. Output the Course's grade and units to the console using pointer syntax.

4. Dynamically allocate an array of 128 Courses objects. You must declare another pointer.

Non-coding question: Which constructor will be used to create/instantiate the elements of the Course array above?

5. Properly de-allocate the array of 128 Course objects.

0 0
Add a comment Improve this question Transcribed image text
Answer #1

1. Declare a pointer to a Course object and properly initialize it.
Course *course = NULL; // declare a pointer of Course object which is initialized to NULL since it is not allocated any memory

2. Dynamically create/instantiate a Course object ( with parameters: grade == "A-" and units==5) and assign it to the pointer above.

course = new Course("A-",5); // create a new Course object and assign it to course

3. Output the Course's grade and units to the console using pointer syntax.

cout<<"Grade : "<<course-> get_grade()<<"\n";

cout<<"Units : "<<course-> get_units()<<"\n";

// cout is used for displaying and since course is a pointer we use arrow notation to refer to its member functions

4. Dynamically allocate an array of 128 Courses objects.

Course *coursePtr = new Course[128]; // create an array of 128 Course objects

Default constructor is used to create/instantiate the elements of Course array created dynamically as no values are provided for the Course objects hence, it will be initialized with default values and hence default constructor is called.

5. De-allocate the array of 128 Course objects.

delete [] coursePtr; // release the memory allocated to the coursePtr array

Add a comment
Know the answer?
Add Answer to:
Assuming the following class declaration: class   Course {        private:               string grade_;        &n
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
  • 2 Class Vec Message1 2.1 Introduction • Write a class Vec Message1 with the following declaration....

    2 Class Vec Message1 2.1 Introduction • Write a class Vec Message1 with the following declaration. class Vec_Message1 { public: Vec_Message1(); Vec_Message1(int n); Vec_Message1(int n, const Message1 &a); Vec_Message1(const Vec_Message1 &orig); Vec_Message1& operator= (const Vec_Message1 &rhs); ~Vec_Message1(); int capacity() const; int size() const; Message1 front() const; Message1 back() const; void clear(); void pop_back(); void push_back(const Message1 &a); Message1& at(int n); private: void allocate(); void release(); int _capacity; int _size; Message1 * _vec; }; 2.2 allocate() and release() • Examine the...

  • please write in c++. 4 Derived class JPG 4.1 Class declaration • The class JPG inherits...

    please write in c++. 4 Derived class JPG 4.1 Class declaration • The class JPG inherits from File and is a non-abstract class. 1. Hence objects of the class JPG can be instantiated. 2. To do so, we must override the pure virtual function clone() in the base class. • The class declaration is given below. class JPG : public File { public: JPG(const std::string& n, int n, int w, const double rgb()) : File(...) { // ... } *JPG()...

  • In c++ show both .cpp and .hpp file for the class: class Task { private: //...

    In c++ show both .cpp and .hpp file for the class: class Task { private: // These three member variables store the basic information about a task string title; string location; // This pointer will point to a dynamically-allocated array // of THREE strings. Each element contains the name of a supply required for this task. // This should start out set to NULL. string * tags; // This integer stores the number of elements in the tags array. int...

  • please write the code in C++ 2 Base class File 3 Derived class PDF 3.1 Class...

    please write the code in C++ 2 Base class File 3 Derived class PDF 3.1 Class declaration • The class PDF inherits from File and is a non-abstract class 1. Hence objects of the class PDF can be instantiated. 2. To do so, we must override the pure virtual function clone) in the base class • The class declaration is given below. • The complete class declaration is given below, copy and paste it into your file. . It is...

  • e fellowing class declaration to answer the questionist below class WeatherStation public emp, double wind, string...

    e fellowing class declaration to answer the questionist below class WeatherStation public emp, double wind, string wind dir, double prediplk void void void int Winda int getTempo double getWindSpeed) : string getWind Direction): double getPrecipitation: void setTemp(int t void setWindData(double w, string dir): void setPrecip(double pl printTempO private int temperature double windSpeed, precipitation string windDir method 14) 14) Refer to the class declaration above. Which of the following methods is an accessor A) int WindChillo: C) WeatherStation: B) void setPrecipO...

  • 2. (03) Consider the following Widget class declaration class Widget private int widgets; private Widget (int...

    2. (03) Consider the following Widget class declaration class Widget private int widgets; private Widget (int w) widgets = w; public int getwidgets() { return widgets; } What is the problem with the Widget class declaration? (A) The syntax of the Widget class is wrong. It will not compile. (B) The constructor parameter should not be w. It must be named widgets. (C) There is no outside access to the Widget constructor. A Widget object cannot be constructed. (D) A...

  • Consider the Tollowing class declaration: class student record public: int age; string name; double gpa; }:...

    Consider the Tollowing class declaration: class student record public: int age; string name; double gpa; }: Implement a void function that initiatizes a dynamic array of student records with the data stored in the file "university body.txt". The function has three formal parameters: the dynamic array "S db, the count, and the capacity. Open and close an ifstream inside the function. Remember, you must allocate memory for the initial size of the dynamic array using "new" inside this function. If...

  •     class Circle    {    public:        enum Color {UNDEFINED, BLACK, BLUE, GREEN, CYAN,...

        class Circle    {    public:        enum Color {UNDEFINED, BLACK, BLUE, GREEN, CYAN, RED};        Circle(int = 0, int = 0, double = 0.0, Color = UNDEFINED);        void setX(int);        void setY(int);        void setRadius(double);        void setColor(Color);        int getX() const;        int getY() const;        double getRadius() const;        Color getColor() const;           private:        int x;        int y;   ...

  • 2. (50 marks) A string in C++ is simply an array of characters with the null...

    2. (50 marks) A string in C++ is simply an array of characters with the null character(\0) used to mark the end of the string. C++ provides a set of string handling function in <string.h> as well as I/O functions in <iostream>. With the addition of the STL (Standard Template Library), C++ now provides a string class. But for this assignment, you are to develop your own string class. This will give you a chance to develop and work with...

  • In Exercise 1, displayAnimal uses an Animal reference variable as its parameter. Change your code to...

    In Exercise 1, displayAnimal uses an Animal reference variable as its parameter. Change your code to make the displayAnimal function anim parameter as an object variable, not a reference variable. Run the code and examine the output. What has changed? Polymorphic behavior is not possible when an object is passed by value. Even though printClassName is declared virtual, static binding still takes place because anim is not a reference variable or a pointer. Alternatively we could have used an Animal...

ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT