错误 C2679 模板类

error C2679 template class

本文关键字:C2679 错误      更新时间:2023-10-16

默认构造函数中发生错误

错误:错误 C2679:二进制"=":未找到采用类型为"int"的右侧操作数的运算符(或者没有可接受的转换)

守则:

#ifndef _SLOT_H
#define _SLOT_H
#include <string>
using namespace std;
template <class T>
class slot
{
private:
    string key;
    T data;
public:
    slot();
    slot(string str);
    slot(string str, T tempdata);
    slot(const slot &source);
    string getkey();
    T getdata();
    void setkey(string str);
    void setdata(T tempdata);
};
template<class T>
slot<T>::slot()
{
    key = "";
    data = NULL;
}

问题可能是您使用不允许为其分配int的类型T实例化模板。

我想

我知道这个问题的解决方案。继续并将主要内容放在头文件中。应该处理您遇到的所有指针问题

例如

获取main中的所有代码并将其放在文件标题"Main.h"中,通过linux注释mount/dev/bin/boot将其链接到其他文件。这将导致文件在启动时链接。如果您有任何其他问题,请告诉我。此外,在链接文件后,您可能需要重新启动才能正常工作

祝您编程愉快!

相关文章: