草庐IT

c++ - 在 C++ 中重载 **

全部标签

C# 字符串运算符重载

你好friend-什么是重载字符串运算符、=的正确方法(不包括是否可取的参数)?到星期天我已经尝试了五种方法,但我遇到了各种错误-我最好的办法是声明一个部分类并从那里重载,但由于某种原因它不起作用。namespaceSystem{publicpartialclassString{publicstaticBooleanoperator(Stringa,Stringb){returna.CompareTo(b)>0;}} 最佳答案 String是一个密封类。您不能继承它,并且如果没有String的原始源代码,您就不能编译它的部分类。即使

c# - 如何调用重载的 c# 函数,唯一的区别是在 c++/cli 中是否通过 ref 传递参数

我有一个带有重载方法的C#类库,一个方法有一个ref参数,另一个有一个value参数。我可以在C#中调用这些方法,但在C++/CLI中无法正确调用。编译器似乎无法区分这两种方法。这是我的C#代码namespacetest{publicclasstest{publicstaticvoidfoo(inti){i++;}publicstaticvoidfoo(refinti){i++;}}}和我的C++/CLI代码intmain(array^args){inti=0;test::test::foo(i);//errorC2668:ambiguouscalltooverloadedfuncti

c# - 使用 CType 的枚举解决重载问题

考虑以下最小示例:ModuleModule1PrivateEnumMyEnumAEndEnumPublicSubMain(argsAsString())AreEqual(CType(0,MyEnum),MyEnum.A)'ErrorhereEndSubPrivateFunctionAreEqual(OfT)(item1AsT,item2AsT)AsBooleanReturnFalseEndFunctionPrivateFunctionAreEqual(item1AsObject,item2AsObject)AsBooleanReturnFalseEndFunctionEndModule

c# - 动态 linq 和运算符重载

考虑下面的代码:varvectorTest=newVector2(1,2)+newVector2(3,4);//Worksvarx=Expression.Parameter(typeof(Vector2),"x");vartest=System.Linq.Dynamic.DynamicExpression.ParseLambda(new[]{x},null,"x=x+x");运行它,我得到以下异常:System.Linq.Dynamic.ParseExceptionwasunhandledbyusercodeMessage=Operator'+'incompatiblewithoper

c# - Visual Studio 的C# intellisense 能否提示先显示某个方法重载?

我有两个互相重载的方法publicclassCar{publicintGetPrice(stringvinNumber){stringmake=Database.GetMake(vinNumber);//expensiveoperationstringmodel=Database.GetModel(vinNumber);//expensiveoperationintyear=Database.GetYear(vinNumber);//expensiveoperationreturnthis.GetPrice(make,model,year);}publicintGetPrice(str

c# - 重载的 false 运算符什么时候被执行,它有什么用?

我一直在寻找实际执行重载的false运算符的实际工作代码。Thisquestion(What'sthefalseoperatorinC#goodfor?)有点相同,但接受的答案链接到返回404错误的url。我也看过Howdoesoperatoroverloadingoftrueandfalsework?以及其他一些问题。我在几乎所有答案中发现的是,false仅在您使用短路和类似x&&y时才会执行。这被评估为T.false(x)?x:T.&(x,y).好的,所以我有以下代码。struct包含一个int并且如果int大于零则认为它自己为真。:publicstructMyStruct{pri

c# - 返回类型和重载解析不明确的 Lambda 转换

这个问题在这里已经有了答案:Peculiaroverloadresolutionwithwhile(true)(1个回答)关闭8年前。如果我有一个lambda,例如()=>{thrownewException();},不清楚它是否有返回类型。因此,它可以(隐式)转换为Action。和Func(或任何其他Func)。这是因为,根据C#4规范的§6.5匿名函数转换:[A]delegatetypeDiscompatiblewithananonymousfunctionFprovided:…IfDhasavoidreturntypeandthebodyofFisastatementblock,

c# - 为什么用于 Unicode 属性测试的 C# System.Char 方法有两个重载?

在methodsofSystem.Char,我们看到两种检查字符是否为符号的方法:publicstaticboolIsSymbol(strings,intindex)publicstaticboolIsSymbol(charc)同样适用于其他属性测试:IsLower、IsLetter等为什么会出现这种重复?有什么理由比Char.IsSymbol(s[idx])更喜欢Char.IsSymbol(s,idx)吗? 最佳答案 从表面上看,这两个重载在功能上似乎是相同的,但是深入到对InternalGetUnicodeCategory的调用

c# - C# 中的运算符重载

classPoint{privateintm_PointX;privateintm_PointY;publicPoint(intx,inty){m_PointX=x;m_PointY=y;}publicstaticPointoperator+(Pointpoint1,Pointpoint2){PointP=newPoint();P.X=point1.X+point2.X;P.Y=point1.Y+point2.Y;returnP;}}例子:PointP1=newPoint(10,20);PointP2=newPoint(30,40)P1+P2;//operatoroverloading

c# - Windows Phone 7 物理按钮重载

是否可以访问手机物理按钮引发的任何事件?特别是音量按钮。朝任何方向插入都会很好。 最佳答案 只有“后退”按钮,即使如此,您做事的能力也受到严重限制。修改任何这些按钮的行为(在允许修改后退按钮之外)将导致您的应用程序被拒绝认证。这是WP7UIDesignandInteractionGuidelines的内容说:“开发人员没有修改开始按钮行为的权限...”pg.107“开发人员不能修改或更改搜索按钮的行为。”页。109“开发人员应仅实现后退按钮导航返回或关闭上下文菜单或模式对话框的行为。禁止所有其他实现。”p.111“开发人员没有修改电