gpt4 book ai didi

c++ - 类模板成员不存在错误

转载 作者:行者123 更新时间:2023-11-30 03:54:21 26 4
gpt4 key购买 nike

我刚开始学习模板,但在尝试使用该模板时,我在类模板和调用成员函数之间遇到了错误。

类模板

template<class T> class MyVector{
private:
int dataMembers;
public:
template<class T>
void MyVector<T>::push_back(){//body of the function}
};

司机

int main()
{
MyVector<Account*> bankAccounts;
bankAccounts.push_back(//dynamic object);
//error: class MyVector<Account*> has no member "push_back"
//...
return 0;
}

最佳答案

您可以像这样在类中声明和定义模板函数:

template<class T>
class MyVector {
private:
int dataMembers;
public:
void push_back( T arg ) {
//some code
}
};

或者在外面定义body:

template<class T>
class MyVector {
private:
int dataMembers;
public:
void push_back( T arg );
};

template<class T>
void MyVector<T>::push_back( T arg ) {
//some code
}

关于c++ - 类模板成员不存在错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29597952/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com