In the default constructor, I'm not sure you should bother allocating 1 character--you could implement it such that everything checks length against zero. As it is currently, you should probably set the allocated character to null. That way, if you would just try to print pData, it would successfully print nothing.
In both the copy constructor and the assignment operator, it is important to make deep copies using strcpy. This will be the tricky part, because if the copied string is longer than your current string you'll have to delete[] pData and allocate space again. If it's shorter, than you already have enough memory allocated to store it--well, I suppose you could just reallocate it anyway...
yea i used to strcpy and i got them both working, and i jus did that with the default constructor cause thats what the prof gave me so yea. thanks. Im not quite sure on how im supposed to do the concatenation. since like it looks like in the driver it would be string1 + string2 because it jus has the one argument but that dosnt make sense, so what do you think?
It's been a few days, so I'm not sure you're still working on this, but that is a non-static method of the MyString class. Non-static methods are always associated with an object (an instance of the class). As such, it has access to two MyStrings: the object for which the method is invoked and the one passed in as a parameter.