-
多重继承会导致虚假的歧义虚拟函数重载
在此示例中,类<code>Foo</code>和<code>Bar</code>是从库中提供的。我的课程<code>Baz</code>继承自两者。 <pre> -
在静态编译的Groovy中调用最具体的重载
由于Groovy动态方法调度了以下代码输出<code>ABC</code>,这正是我所期望的。添加<code>@CompileStatic</code>后, -
Kotlin:过载分辨率的歧义
科特林的新手。我正在使用Apache Camel,并使用<code>process</code>转换器创建了一条路由,如下所示: <pr -
重载函数的地址与所需类型不匹配
所以我正在使用一个看起来像这样的构造函数: <pre><code>deduplicator(std::function<void(const std::vector<u -
涉及老式枚举和整数类型的重载解析
请考虑以下代码 <pre class="lang-cpp prettyprint-override"><code>#include <iostream> using namespace std; enum myEnum -
非捕获lambda和函数指针作为重载函数歧义中的参数
<pre><code>#include <functional> #include <iostream> template<typename T> void test( std::function< void ( const T& -
同步和异步委托的超载分辨率类型推断问题
我有方法<code>Foo</code>的两个重载,一个重载为同步,一个重载为异步委托: <pre><code>public static void F -
为什么选择这种转换运算符的重载?
考虑<a href="https://godbolt.org/z/zqmSs2" rel="noreferrer">following code</a>。 <pre><code>struct any { template <typenam -
为什么用直接超类参数而不是对象选择重载方法?
<pre><code>public class Main { static void method(A a){ System.out.print("one"); } static void method(B b){ -
重载运算符删除而不重载new时正确的行为是什么? gcc和clang不同
以下代码与<em> clang </em>(x86_64-pc-linux-gnu上的版本5.0.0-3〜16.04.1)和<em> gcc </em>(9.2.0 )。 <pre><code>voi -
当T = int&时,为什么构造函数Message(const T && data)与Message(T && data)冲突?
<pre class="lang-cpp prettyprint-override"><code>template <typename T> struct Message { T data; explicit Message(T&& d -
如何防止C ++猜测第二个模板参数?
我正在使用C ++库(<a href="https://github.com/robhz786/strf" rel="nofollow noreferrer">strf</a>),该库中的某个位置具 -
如何通过将重载函数签名作为模板参数来解决它?
我正在编写一个委托库,并对这个问题problem之以鼻:假设我已经重载了名为foo的函数,如下所示: < -
根据非成员swap()实现成员swap()
我正在实现一个与<code>std::array</code>类似的接口的类,该接口同时具有<a href="https://en.cppreference.com/w/cpp/co -
即使有更具体的方法,也会调用带有“ params”的方法
我有两种方法,一种带有参数,另一种没有参数。如果我在未指定任何参数的情况下调用该方法,则它 -
两个功能模板候选。将一个参数作为参考后,选择较不专业的模板 1。选择了候选功能。 2。选择最佳可行功能:
我有共同的代码– Dijkstra的算法–我在不同的上下文中使用,所以我决定使用标签分发。 以下代 -
名称空间中模板运算符的重载解析
输入名称空间时,模板运算符重载时遇到了一些麻烦。考虑添加数组: <pre><code>// overloads.hpp #include & -
我如何专门针对指向复杂值的迭代器的算法?
我正在尝试编写一种适用于迭代器的算法(类似于STL算法),但是我需要编写一种算法的特殊性,以便 -
如何将一个类的函数添加到同一个类的其他函数中的重载重排列表中?
问题在代码段之内: <pre><code>#include <algorithm> #include <utility> #include <iostream> struct A { -
隐式转换序列的排名[f(int)和f(const int&)]
请考虑以下功能: <pre><code>docker{,-compose} run</code></pre> 它们是不同的,它们的定义可以成功地一起 -
如何解释此“通话不明确”错误?
<h1>问题</h1> 请考虑以下两种扩展方法,它们只是从任何类型的<code>T1</code>到<code>T2</code>的简单映射,以 -
具有隐式转换的超载分辨率
我基本上希望为string / FormattableString提供两个单独的重载(背景是我希望促使人们倾向于使用字符串常量 -
在Python.NET中消除带有多个参数的重载方法的歧义 环境详细信息
<h3>环境</h3> <ul> <li> Pythonnet版本:2.3.0和2.4.0 </li> <li> Python版本:3.6.5 </li> <li>操作系统:W10 </li> </ul> <h3>详 -
具有两个(或多个)特定包的可变参数函数模板(专业化/重载)
函数'Process'正在使用<em>数量可变类型的参数</em>。为了处理不同的情况,我已经成功地像这样重载了它 -
Java重载:如何调用更具体的一个
我的程序解析<code>WebAssembly</code>指令,并根据当前指令的上下文进行决策。因此,我算法的MWE如下所示 -
关于函数名称查找的困惑 [basic.lookup.argdep]: [basic.lookup.unqual]:
我对标准中的一些规则感到困惑。我在这里引用它们: <h3> <a href="https://timsong-cpp.github.io/cppwp/n4659/bas -
过载解析和用户定义的转换
考虑以下示例: <pre><code>struct Foo { Foo(int){cout << "Foo(int)\n";} Foo(double){cout << "F -
为什么类型推导一次失败,而在两种非常相似的情况下又一次成功?
我正在尝试编写一个<strong>函数</strong>,该函数为<strong>最大大小</strong>提供给定的<strong>类型列表</strong -
编译器之间的重载分辨率不同
我已经构造了以下问题的最小示例: <pre><code>#include <iostream> struct Foo { Foo() { std::cout << -
为什么在传递很长的long时调用带有double类型的两个参数的重载函数?
我写了这两个重载: <pre><code>int func(int, int) { return 1; } int func(double, double) { return 2; } </code></pre