template < class T, class container = vector<T> > class MyClass{ private: T value; public: /* void assign(const MyClass<T>& x){ value = x.value; }*/ template<class X> void assign(const MyClass<X>& x){ value = x.value; } T getValue() const{ //表示这个函数不会修改类成员 return value; } const T setAndGetValue(T v){ //表示函数返回的值是常量 value = v; return value; } };