jjzjj

模棱两可

全部标签

c++ - 这是模棱两可还是完全没问题?

这段代码是模棱两可的还是完全没问题(通过标准批准/对现有的任何编译器都有一致的行为)?structSCustomData{intnCode;intnSum;intnIndex;SCustomData(intnCode,intnSum,intnIndex):nCode(nCode),nSum(nSum),nIndex(nIndex){}};编辑:是的,我指的是成员变量与构造函数的形参同名。 最佳答案 不,在这种情况下没有歧义,但请考虑以下内容:structSCustomData{//...voidSetCode(intnCode){/

c++ - 为什么这个类型转换模棱两可?

我有一个我编写的类,它执行类型删除。公共(public)接口(interface)是:templatevalue(constT&t);value(value&&v);templateoperatorT()const;当我从std::string创建一个值实例时,我没有遇到任何问题,一切都按预期进行。当我尝试使用static_cast(val)恢复std::string时,其中val是持有std::string的值实例,我从VS2012得到以下错误:errorC2440:'static_cast':cannotconvertfrom'value'tostd::string'Noconst

c++ - 模板扣减申诉模棱两可的候选人

我打算实现我的“稀疏vector”和“vector”类的乘法运算符。以下简化的代码演示显示了我的问题Vector.hpp中的Vector类#pragmaoncetemplateclassVector{public:Vector(){}templatefriendVectoroperator*(constScalar&a,constVector&rhs)//#1{returnVector();}};SpVec.hpp中的稀疏vector类#pragmaonce#include"Vector.hpp"templateclassSpVec{public:SpVec(){}templatein

c++ - 这个函数调用应该是模棱两可的吗?

前几天我无意中发现了这个问题,不知道哪个答案是正确的,或者两者是否都可以接受。具体来说,我指的是在OtherFunction中对bar(T{})的调用。从我能够在编译器资源管理器上进行的测试来看,这个决定似乎是split的。msvc和icc同意它是模棱两可的,而gcc和clang编译代码没有问题。隐藏命名空间内的功能栏通过参数相关查找变得可见。此外,msvc/icc将全局命名空间中的bar声明视为候选者,而gcc/clang则不考虑。似乎不应该考虑全局命名空间中的声明,因为它是在调用bar(T{})之后声明的,但我不确定我是否正确阅读了不合格名称查找的规则,或者标准是否是在这方面模棱两

c++ - 模棱两可的部分模板特化

我有一个特征类,我需要对其进行多次特化(和部分特化)。一些部分专业重叠:templatestructC{};templatestructTRAIT{};templatestructTRAIT{};templatestructTRAIT,C>{};intmain(){//ERROR!couldbebothTRAIT[withT=C]//andTRAIT[withT1=T2=int]TRAIT,C>foo;return0;};我应该如何使用有效代码获得相同的结果?我对enable_if和is_same非常着迷,我什至不确定这是不是正确的方法... 最佳答案

error12“会员资格”是“ system.web.security.membership”和“ testsitev1.model.model.model.model.model.model”之间的模棱两可的参考。

我将数据类型从int到浮动进行了修改,然后,我通过选择“来自数据库的更新模型”更新了模型->EDMS文件。它成功更新但事实证明:错误12“会员资格”是“system.web.security.membership”和“testsitev1.model.membership”之间的模棱两可的引用。有人可以帮助我解决这个问题吗?顺便说一句,还有另一个警告说:警告5变量“e”被声明但从未使用过看答案你有课Membership在您的模型中,还包括名称空间System.Web.Security,其中包含一个称为的类Membership.因此错误:“会员资格”是“system.web.securit

Windows表单应用很多模棱两可的符号

创建C++表单应用程序,我已经开始获得一些模棱两可的符号错误。但是我不太确定它是什么,它更早地编译了,但我可能已经改变了一些东西?您的错误本身:1>Application.cpp1>c:\programfiles(x86)\windowskits\10\include\10.0.15063.0\um\ocidl.h(4089):errorC2872:'IDropTarget':ambiguoussymbol1>c:\programfiles(x86)\windowskits\10\include\10.0.15063.0\um\oleidl.h(3508):note:couldbe'IDrop

android - 模棱两可的方法调用。 AppCompactActivity 和 Activity 中的 findViewById(int)

我引用这个链接Error:Ambiguousmethodcall.BothfindViewById(int)inAppCompactActivityandActivity解决但没有导入android.app.Activity并且如果我将导入android.support.v7.app.AppCompatActivity转换为android.app.Activity然后错误出现但我想使用AppCompatActivity。我还更新了SDK中的所有库,并使它失效并重新启动,但没有任何效果。为什么会出现这个错误,如何解决? 最佳答案 我猜

c++ - 为什么这些重载不是模棱两可的?

以下代码使用gcc和clang编译良好。templatestructidentity{typedefTtype;};templatevoidfoo(typenameidentity::type);templatevoidfoo(T);intmain(){foo(0);}看起来重载解析正在选择第一个重载(identity::type一个)。有人可以解释为什么重载没有歧义吗?据我所知,它们之间的唯一区别是第一个参数是非推导上下文而第二个参数不是,但是由于我明确提供了模板参数,所以我不明白为什么这很重要。 最佳答案 两种重载都是可行的,但

c++ - 模棱两可的 pow() 函数

我正在尝试从math.h中对pow()函数进行简单调用,类似于...#includeintmain(){floatv,w;w=3.0;v=pow(w,0.5);//ithinkthisis'floatpow(float,float)'return0;}但是visualstudio说这是一个错误1>c:\users\user\documents\visualstudio2008\projects\deo\deo\main.cpp(7):errorC2666:'pow':6overloadshavesimilarconversions1>c:\programfiles(x86)\micro