Tôi chắc chắn rằng điều đó là có thể nhưng tôi không thể làm điều đó, đó là: Làm cách nào để xác định mẫu chức năng bên trong lớp không phải mẫu? Tôi đã thử một cái gì đó như thế này:Mẫu chức năng trong lớp không phải mẫu
class Stack_T
{
private:
void* _my_area;
static const int _num_of_objects = 10;
public:
// Allocates space for objects added to stack
explicit Stack_T(size_t);
virtual ~Stack_T(void);
// Puts object onto stack
template<class T>
void put(const T&);
// Gets last added object to the stack
template<class T>
T& get()const;
// Removes last added object from the stack
template<class T>
void remove(const T&);
};
template<class T> //SOMETHING WRONG WITH THIS DEFINITION
void Stack_T::put<T>(const T& obj)
{
}
nhưng nó không hoạt động. Tôi nhận được err này msg:
'Lỗi 1 lỗi C2768: 'Stack_T :: đặt': sử dụng trái phép mẫu lập luận rõ ràng'
Cảm ơn bạn
tôi tryied này nhưng tôi nhận được một lỗi: 'Lỗi LNK2019 lỗi: chưa được giải quyết biểu tượng bên ngoài "public: void __thiscall Stack_T :: đưa (int const &)" (?? $ đặt @ H @ Stack_T @@ QAEXABH @ Z) được tham chiếu trong hàm _wmain \t Stack_of_Objects.obj ' –