gpt4 book ai didi

c++ - 全局模板函数的问题

转载 作者:行者123 更新时间:2023-11-28 08:20:54 25 4
gpt4 key购买 nike

出于某种原因,我似乎无法在 GCC 中调用我的全局模板函数...

在“globals.h”中定义的全局函数:

template <typename T1, typename T2> inline T1 Min (const T1 & v1, const T2 & v2)
{
return v1 < v2 ? v1 : v2;
}

从“test.h”中定义的类调用函数:

#include "globals.h"

class Test
{
public:
Test()
{
int a = 2;
int b = 3;
int c = Min(a, b); //error: 'Min' was not declared in this scope
int d = ::Min(a, b); //error: '::Min' has not been declared
int e = Min<const int, const int>(a, b); //error: expected primary-expression before 'const'
int f = this->Min(a, b); //error: 'class Test' has no member named 'Min'
}
};

我该怎么办?

最佳答案

g++ 版本 4.3.4 正确编译这些,仅在最后一行给出错误。参见 http://ideone.com/cD13Y .您使用的是什么版本?

关于c++ - 全局模板函数的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5880065/

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