template<class T> class List { struct Link { Link* pre; Link* suc; T val; Link(Link* p, Link* s,const T& v) :pre(p), sur(s), val(v) { } } // 语法错误:缺少分号 Link* head; public: List() :head(7) { } // 错误:用int初始化指针 List(const T& t) : head(new Link(0,o,t)) { } // 错误:无定义标识符o // ... void print_all() const { for (Link* p = head; p; p=p->sur) cout << p->val << '\n'; } };