Answer to Question #184726 in C++ for Amar

Question #184726

Q1.Define class Student with the following attributes and member functions.

i. Date of Birth (constant data member) ii. Pointer to char for name iii. Pointer to char for Department iv. Student ID (constant data member) v. Member function Constructors vi. Member function Destructor vii. Member function to modify state of the object viii. Member function to display state of the object (should be constant) Note that pointers in (ii) and (iii) should point to the dynamic memory allocated for name and Department name. Get information of the student object in constructor. Memory for name and Department will be allocated in constructor using dynamic memory allocation. Destructor will release memory to the operating system.

Q.3. Extend Q.2 for shallow and deep copy constructor


1
Expert's answer
2021-04-24T06:11:29-0400
/* Implementation for the PositiveInteger Class (PositiveInteger.cpp) */
#include <iostream>
#include <stdexcept>    // Needed for exception handling
#include "PositiveInteger.h"
using namespace std;
 
// Constructor with input validation
PositiveInteger::PositiveInteger(int value) {
   // Call setter to perform input validation
   setValue(value);
}
 
// Setter with input validation
void PositiveInteger::setValue(int v) {
   if (v > 0) {
      value = v;
   } else {
      throw invalid_argument("value shall be more than 0.");
            // need <stdexcept>
   }
}
 
// Getter
int PositiveInteger::getValue() const {
   return value;
}

Need a fast expert's response?

Submit order

and get a quick answer at the best price

for any assignment or question with DETAILED EXPLANATIONS!

Comments

No comments. Be the first!

Leave a comment

LATEST TUTORIALS
New on Blog
APPROVED BY CLIENTS