//.h class Mystring{ public: Mystring(const char* str = "empty"); Mystring(const char* data, int len); ... ... ~Mystring(); int myReplace(const char* from, const char* to); int myappend(const char* data); ... ... private: char* m_data; unsigned int m_len; }; //.cpp Mystring::Mystring(const char* str){ ... } Mystring::Mystring(const char* data, int len){ ... } ... ...
//.h template <class T> class Stack { public: Stack(int s = 10); ~Stack(); void push(const T n); T pop(); private: int m_size; int m_top; T* m_stackPtr; }; //.cpp template <class T> Stack<T>::Stack(int s){ ... } template <class T> Stack<T>::~Stack(){ ... }
template class TestTemplate<int>; template class TestTemplate<float>;