gpt4 book ai didi

c++ - 使用另一个类的模板参数实例化一个模板类

转载 作者:太空宇宙 更新时间:2023-11-04 14:53:49 25 4
gpt4 key购买 nike

有没有办法用另一个类的模板参数实例化一个模板类(示例中的“A”)?

例子:

“A”类:

//A.h
template <size_t size>
class A
{
void doSmt()
{
// do something with size
}
};

“B”类:

//B.h
#include "A.h"
template<typename V>
class B
{
void doSmt2(A<V> a) //Error Here
{
//do something with a
}
};

我得到的错误:错误 1

error C2993: 'V' : illegal type for non-type template parameter 'size'  

最佳答案

是的。您的问题是 V 是类型参数,而 sizesize_t 参数。只需让它们匹配即可。

template <std::size_t V>
class B
{
void doSmt2(A<V> a)
{
}
};

关于c++ - 使用另一个类的模板参数实例化一个模板类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33082689/

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