My constructor creates a copy just fine – but when a method takes an IntegerNumber as an argument, it stops working.
My constructor:
IntegerNumber::IntegerNumber(const IntegerNumber &integerInput){
//Creates a copy of an Integer Number
//Set len and isNegative
len = integerInput.len;
isNegative = integerInput.isNegative;
//Fill integer with IntegerInput
integer = new char[len+1];
for(int i = 0; i <= len; i++)
integer[i]=integerInput.integer[i];
}
My destructor:
IntegerNumber::~IntegerNumber(){
//Destructs IntegerNumber
delete [] integer;
delete &len;
delete &isNegative;
}
My Class’ data members:
private:
char *integer;
int len;
bool isNegative;
Please try and help me figure out what could be wrong with my constructor/destructor such that the program stops but doesnt crash or break?
you dont want this:
deleting instance variables like this is undefined bahaviour so your program can stop