Can anyone fix this code, I use Visual Studios: The Errors im getting is that it is not reverseing correctly, And the line if (arr[i] == strRev[i]) gives me a error code C4700 uninitialized local variable \'strRev\' used This is the program that neeeds to be created: In C++, with a myString.h, myStringImp.cpp, and main.cpp: Design and implement a class myString: -Use a dynamic array of char to store the characters of myString. -Use an int to keep track of the length of myString. -Provide a parameterized constructor that takes an initial string, a default constructor, destructor, assignment operator, and copy constructor. All need to correctly handle the dynamic array. -Also provide these member functions: --length() //the length of myString --isEqual() //if it is equal to another myString --print() //output to a terminal cout or outFile --reverse() //reverse the order of characters in myString --isPalindrome() //if myString reads the same after being reversed Here is the code that is broken: C++ Code: Header File:myString.h #ifndef MYSTRING_H_INCLUDED #define MYSTRING_H_INCLUDED #include using namespace std; //Class definition class myString { public: //Char Array pointer char *arr; //Integer to hold length int len; //Default constructor myString(); //Parameter constructor myString(string str); //Copy constructor myString(const myString &obj); //Overloading assignment operator void operator=(const myString &obj); //Destructor ~myString(); //Returns length int length(); //Compares two string for equality bool isEqual(myString &obj); //Printing string to console void print(); //Reversing the string void reverse(); //Check for palindrome of current string and its reverse bool isPalindrome(); }; #endif // MYSTRING_H_INCLUDED Implementation File:myString.cpp /* Implementation File */ #include #include #include \"myString.h\" using namespace std; //Default Constructor myString :: myString() { //Initializing length to 0 len = 0; arr = new char[0]; } //Parameter constructor myString :: myString(string str) { int i; //Taking length len = strlen(str.c_str()); //Allocating space arr = new char[len+1]; //Copying characters for(i=0; i arr[i] = str[i]; arr[i] = \'\\0\'; } //Copy constructor myString :: myString(const myString &obj) { //Fetching length len = obj.len; //Allocating memory arr = new char[len]; //Assigning dynamic character arrays *arr = *obj.arr; } //Assignment operator overloading void myString :: operator=(const myString &obj) { //Fetching length len = obj.len; //Allocating memory arr = new char[len]; //Assigning dynamic character arrays *arr = *obj.arr; } //Destructor myString :: ~myString() { //deallocates space delete arr; } //Function that returns length of string int myString ::length() { return len; } //Compares two strings and returns true if they are equal else false bool myString::isEqual(myString &obj) { int i, cnt=0; //Comparing lengths if(len != (obj.len)) return false; //Comparing character by character for(i=0; i { if(arr[i] ==.