overload-resolution

overload-resolution

文章 0 浏览 6

扣除在类模板中声明的朋友函数的模板参数

考虑以下示例: #include template struct S { friend int Func(T) // decl-1 { return V; } }; struct U { friend int Func(U); // decl-2 }; templa…

北恋 2025-02-13 23:06:59 1 0

如何将指针到基座转换为void比指针衍生到void转换更好

[over.ics.rank]/4 : [..] (4.3)如果B类直接或间接从A类派生,则B***的转换比B*转换为void*更好,并且A*转换为void*比B的转换更好* void*。 因此…

难理解 2025-02-13 12:44:13 0 0

了解整个功能模板超载分辨率的过程

我发现超负荷分辨率过程是我在C ++中学到的更为复杂的过程,因此请记住,这个话题对我来说很难轻松理解,因此请耐心等待。 我在这里有两个示例,我试…

若无相欠,怎会相见 2025-02-13 08:29:23 2 0

超载函数模板仅在C+&#x2B中仅在返回类型上有所不同。

众所周知,仅在返回类型上有所不同的普通函数不能在C ++中超载。 但是,此限制不适合过载函数模板,例如: int f(auto) { return 1; } auto f(auto) {…

娇柔作态 2025-02-13 05:49:29 2 0

foo(int,int)被挑选在foo(int ...)上

在此代码中,为什么编译器无法引用从静态上下文中具有varargs参数的方法。 private static void doSomething(int... nums) { System.out.println("1")…

浪菊怪哟 2025-02-11 15:23:13 2 0

C++当我调整其序列时,功能分辨率匹配不同的函数

我有一个测试程序,可以查看编译器(G ++)匹配模板函数的方式: #include templatevoid f(T){printf("T\n");} templatevoid f(T*){printf("T*\n");} …

a√萤火虫的光℡ 2025-02-11 05:07:29 2 0

为什么此功能调用不拒绝不合适的过载?

考虑以下代码: #include #include #include //using namespace std; using namespace std::ranges; int main() { std::vector a = {}; sort(a); retu…

青衫负雪 2025-02-08 15:42:14 2 0

如何使用C++

我浏览了类似的线程,但是没有人回答我的问题。我正在寻找一种方法,以确保与两个竞争构造函数正确分辨率的过载,其中一个采用两个参数,另一个是一个…

握住你手 2025-02-05 06:44:28 2 0

为什么在过载分辨率期间认为静态成员函数具有隐式对象参数?

在此链接中:隐式对象参数 在这句话中: 如果任何候选函数是没有显式对象参数(自C ++ 23)而不是构造函数的成员函数(静态或非静态),则将其视为具…

梦冥 2025-02-04 01:21:52 6 0

ADL与当前名称空间中的功能发生冲突

我的命名空间中有一个功能。它的名称是销毁。 std 命名空间还包含 and nofollow noreferrer' 。当我在命名空间中调用我的功能时,调用是模棱两可的,…

内心荒芜 2025-01-30 15:24:45 3 0

sfinae在递归功能中没有工作

让我们创建咖喱函数。 template class CurryT { public: CurryT(const TFunc &func, const TArg &arg) : func(func), arg(arg ) {} template decltype…

七禾 2025-01-27 18:03:19 3 0

[over.match.funcs.general]/9和继承的复制/移动构造函数上的问题

per : 从类型C([class.inhctor.init])继承的构造函数) 具有“引用CV1 P”类型的第一个参数(包括这样的A 从模板实例化的构造函数)不包括在一组 …

狼亦尘 2025-01-25 11:12:42 2 0

关于“完美匹配”的混乱和“与次要调整”的MatchB&quot在完美的转发CTOR与其他构造函数的背景下

我正在阅读第25章的第25章 c ++模板 - 完整指南 - 第二版。,在哪里,在哪里给定代码,像这样不太这样 #include template struct Tuple; template str…

时光暖心i 2025-01-25 08:54:16 1 0

R:超载原始的非生成功能

我想找到最小的黑客,以便能够说模块:: obj 当模块不是软件包,而是列表或环境。 经过一番挖掘,我看到了新用例的以下作用,但是打破了本机: module …

作死小能手 2025-01-21 11:07:05 1 0

传递概念约束的函数重载

以下代码无法编译(Godbolt 链接): #include template decltype(auto) g(Fn&& fn) { return fn(); } template requires(std::integral) int f() { r…

国粹 2025-01-19 04:41:35 4 0
更多

推荐作者

alipaysp_snBf0MSZIv

文章 0 评论 0

梦断已成空

文章 0 评论 0

瞎闹

文章 0 评论 0

寄意

文章 0 评论 0

似梦非梦

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文