Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 错误c2955:使用c++;样板 模板 类LinkedQue{ 私人: d链接列表d; int n; 公众: ... 无效和_平均值(); }; 模板无效LinkedQue::sum_average(){//C2955 cout_C++_Templates - Fatal编程技术网

C++ 错误c2955:使用c++;样板 模板 类LinkedQue{ 私人: d链接列表d; int n; 公众: ... 无效和_平均值(); }; 模板无效LinkedQue::sum_average(){//C2955 cout

C++ 错误c2955:使用c++;样板 模板 类LinkedQue{ 私人: d链接列表d; int n; 公众: ... 无效和_平均值(); }; 模板无效LinkedQue::sum_average(){//C2955 cout,c++,templates,C++,Templates,您定义类模板成员函数的代码错误。请更改 template<typename Elem> class linkeddeque { private: dlinkedlist<Elem> d; int n; public: ... void sum_average(); }; template<typename Elem> void linkeddeque::sum_average() { //C2955 cout << "

您定义类模板成员函数的代码错误。请更改

template<typename Elem>
class linkeddeque {
private:
dlinkedlist<Elem> d;
int n;
public:
    ...
    void sum_average();
};

template<typename Elem> void linkeddeque::sum_average() {   //C2955
    cout << "Error!" << endl;
}

template <> void linkeddeque<double>::sum_average() {
    int ss = n;
    double sum = 0;
    double temp[50];
    for (int i = 0; i < ss; i++) {
        temp[i] = back();
        sum = sum + back();
        removeback();
    }
    for (int i = 0; i < ss; i++) {
        insertfront(temp[i]);
    }
    double aver = sum / ss;
    cout << "sum : " << sum << " average : " << aver << endl;
}
template void linkedque::sum_average(){

template void linkedque::sum_average(){
~~~~~~
无论如何,这个错误似乎与专门化无关


没有正确地模板化您的
sum\u average()
方法:

template<typename Elem> void linkeddeque<Elem>::sum_average() {
                                        ~~~~~~
template void linkedque::sum_average(){
//                                  ~~~~^^^^^^~~~

请在您的问题中逐字逐句地发布完整的错误消息。
template<typename Elem> void linkeddeque<Elem>::sum_average() {
                                        ~~~~~~
template<typename Elem> void linkeddeque<Elem>::sum_average() {
//                                  ~~~~^^^^^^~~~
    cout << "Error!" << endl;
}