Với mã này (chỉ cần một lớp học thử nghiệm):Làm thế nào để có một Struct với mẫu với một lớp
typedef unsigned short UInt16;
template<class T>
class CClass
{
public:
SValue* getNewSValue(void);
private:
typedef struct {
T *mValue;
T *next;
T *previous;
UInt16 index;
} SValue;
};
template<typename T>
SValue* CClass<T>::getNewSValue(void)
{
return new SValue;
}
tôi có các lỗi sau đây:
error C2143: syntax error : missing ';' before '*'
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
Có thể sử dụng một Cấu trúc trong một lớp học? Nếu tôi khai báo cấu trúc ra khỏi lớp, mẫu không thấy mẫu T
.
+1: câu hỏi có định dạng độc đáo – Chubsdad