gpt4 book ai didi

c++ - 模板参数作为变量

转载 作者:行者123 更新时间:2023-11-27 23:29:32 26 4
gpt4 key购买 nike

有什么方法可以将模板参数用作变量吗?例如,如果我有一个函数

template<int dim>
void DomainGrid<dim>::getData(Data data_, int field_dim)
{
int size_ = field_dim *dim; // Compiler Error Here
for(int i =0; i<size_; ++i)
std::cout<<data_[i]<<std::endl;
}

我可以获得类似的功能吗?编译此函数会在

处产生错误
invalid use of member (did you forget the ‘&’ ?)

无论是否调用函数都会报错

我猜这是因为 this问题...

最佳答案

重命名模板参数或成员函数?

这似乎是最简单、最直接的解决方案。每当多个符号具有相同的名称时,您就有名称冲突的风险。因此,在这种情况下,不要对多个符号使用相同的名称。

(假设您有一个成员函数 dim()。我根据错误消息假设是这样,但实际包含在问题中可能是有用的信息。)

关于c++ - 模板参数作为变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6477780/

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