
strngbad.h
// strngbad.h -- flawed string class definition
#include <iostream>
#ifndef STRNGBAD_H_
#define STRNGBAD_H_
class StringBad
{
private:char * str; // pointer to stringint len; // length of stringstatic int num_strings; // number of objects
public:StringBad(const char * s); // constructorStringBad(); // default constructor~StringBad(); // destructor
// friend functionfriend std::ostream & operator<<(std::ostream & os,const StringBad & st);
};
#endif
strngbad.cpp
// strngbad.cpp -- StringBad class methods
#include <cstring> // string.h for some
#include \"strngbad.h\"
#pragma warning(disable:4996)
using std::cout;// initializing static class member
int StringBad::num_strings = 0;// class methods// construct StringBad from C string
StringBad::StringBad(const char
服饰搭配