【发布时间】:2013-01-27 05:41:02
【问题描述】:
我在 Visual Studio 2010 Pro 中收到此错误:“错误 C2953:'list_1::Node':类模板已被定义”
这是我收到错误的 Node.cpp 类列表(在第 24 行,代码的最后一行。)
#include "Node.h"
namespace list_1
{
template <typename T>
struct Node
{
//Constructor
Node<T>(T D)
{
data = d;
next = NULL;
}
}
;}
还有 Node.H 文件:
#pragma once
namespace list_1
{
template <typename T>
struct Node
{
T data;
Node<T> *next;
// Constructor
// Postcondition:
Node<T> (T d);
};
}
我已经查看了here,这对我没有帮助,因为我已经使用过一次#pragma,并且在列表头文件中我有#ifndef LIST_H 和#define LIST_H。这个question 不适合我的需要,而且这个answer 中的所有内容似乎都与我已经拥有的模板位有关。
如果我尝试将其设为 struct Node,则会收到错误“错误 C2753:'list_1::Node':部分特化无法匹配主模板的参数列表”
所以我不知道该怎么办。请帮忙。
【问题讨论】: