overload-resolution

overload-resolution

文章 0 浏览 3

C++11 重载解析的奇怪情况

今天我遇到了一个相当奇怪的重载解析案例。我将其简化为以下内容: struct S { S(int, int = 0); }; class C { public: template C(S, Args... args);…

可是我不能没有你 2024-12-11 16:06:23 0 0

为什么调用非 const 成员函数而不是 const 成员函数?

为了我的目的,我尝试包装一些类似于 Qt 共享数据指针的东西,经过测试,我发现当应该调用 const 函数时,会选择它的非 const 版本。 我使用 C++0x 选…

此岸叶落 2024-12-02 11:15:26 3 0

使用动态参数的方法重载决策

这可能之前已经回答过。我看到很多“动态方法重载解析”问题,但没有一个专门处理传递动态参数。在以下代码中,在 Test 中,无法解析对 M 的最后一次…

樱花细雨 2024-12-01 09:54:17 2 0

C++编译器选择了类成员函数的错误重载

我有这样的代码: template class Something { T val; public: inline Something() : val() {} inline Something(T v) : val(v) {} inline T& get() c…

别靠近我心 2024-11-30 01:18:50 0 0

c++重载运算符解析

我正在学习 C++ 并使用 C++ Primer。考虑以下练习 14.46: class Complex { Complex(double); // ... }; class LongDouble { friend LongDouble opera…

<逆流佳人身旁 2024-11-25 00:49:05 1 0

重载方法中的 StackOverflowException

我试图在这样的代码中调用重载方法: public abstract class BaseClass { public abstract bool Method(T other); } public class ChildClass : BaseC…

随波逐流 2024-11-18 16:27:22 3 0

导致这种超载解决问题的原因是什么?

我有一个程序,其中有很多嵌套的 if/switch 语句,这些语句在多个地方重复。我尝试将其提取出来并将开关放入模板方法类中,然后允许客户端重载他们想…

〃温暖了心ぐ 2024-11-18 03:10:28 4 0

为什么类的 const 版本选择非常量版本?

以下是测试代码: struct A { operator int (); operator int () const; }; void foo (const int); 现在,调用时: foo(A()); // calls A::operator i…

夏天碎花小短裙 2024-11-17 10:04:26 1 0

C++0x const RValue 引用作为函数参数

我试图理解为什么有人会编写一个采用常量右值引用的函数。 在下面的代码示例中,const 右值引用函数(返回“3”)的用途是什么。 为什么重载解析优先…

人生百味 2024-11-14 15:03:25 4 0

传递 size_t 时对重载 sqrt 函数的不明确调用

string aux; int maxy, auxx = 0; cin >> aux; maxy = (int)sqrt(aux.size()); 为什么我会收到此错误: 1> error C2668: 'sqrt' : ambiguous call to …

享受孤独 2024-11-11 17:43:08 4 0

为什么 C# 编译器重载解析算法将具有相同签名的静态成员和实例成员视为相等?

让我们有两个签名相等的成员,但一个是静态的,另一个不是: class Foo { public void Test() { Console.WriteLine("instance"); } public static voi…

音盲 2024-11-07 23:46:03 4 0

C# 接口重载方法行为

可能的重复: C# 4:与可选参数发生冲突的重载方法 我刚刚一项小研究并创建了下一个代码。 命名空间测试 { 班级计划 { 公共接口ITestA { void Method…

ˉ厌 2024-11-07 16:02:00 3 0

在可变参数模板函数中重载 ostream

我有一个可变参数函数,我想在第一个参数类型上重载。 void write( void ) { } void write( std::ostream& ) { } template void write( std::ostream&…

过潦 2024-11-07 07:16:45 5 0

C++0x 与 using 声明的混淆

对于这种情况会发生什么: struct A { void f(); }; struct B : virtual A { using A::f; }; struct C : virtual A { using A::f; }; struct D : B, C…

凌乱心跳 2024-11-02 07:48:21 5 0

重载解析和数组:应该调用哪个函数?

考虑以下程序: #include #include void f(char const*&&) { std::puts("char const*&&"); } // (1) void f(char const* const&) { std::puts("char c…

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