草庐IT

C++:多态类模板

全部标签

c# - WCF 中的多态性

我正在考虑构建一个可以存储/检索一系列不同类型的WCF服务。以下示例是否可行并且也被认为是可接受的设计:[ServiceContract]publicinterfaceIConnection{[OperationContract]IObjectRetrieveObject(GuidObjectID);[OperationContract]GuidStoreObject(IObjectNewObject);}[ServiceContract][ServiceKnownType(IOne)][ServiceKnownType(ITwo)]publicinterfaceIObject{[Da

c# - 声明 protected 成员的静态类

我正在看书"C#Language",然后点击VladimirReshetnikov的这张便条:Ifastaticclassdeclaresaprotectedorprotectedinternalmember,acompile-timeerroroccurs(CS1057).我可以知道为什么吗?具有protected成员的静态类有什么问题?静态类可以有私有(private)成员,所以我猜这个CS1057错误不是由于可访问性引起的,但也许是由于编译问题引起的?作为protected成员可以在子类中被覆盖...但我不明白为什么。 最佳答案

c# - 多态和类型转换

我想了解C#中的多态性,因此通过尝试几种构造,我想到了以下情况:classShape{publicvirtualvoidDraw(){Console.WriteLine("Shape.Draw()");}}classCircle:Shape{publicoverridevoidDraw(){Console.WriteLine("Circle.Draw()");}}我明白,为了将Draw()消息发送到几个相关对象,以便它们可以根据自己的实现执行操作,我必须更改(在本例中)形状“指向”的实例:Shapeshape=newCircle();shape.Draw();//OK;Thisprin

c# - 如何在 Windows Phone 8 中更改数据透视表头模板

我希望能够在WindowsPhone8中更改PivotHeaders和ApplicationTitle的背景。据我所知,我必须创建一个针对Pivot控件的自定义样式。但是,我不确定是否仅更改标题的背景?我想以某种方式调整样式 最佳答案 已为WinRT编辑(抱歉延迟,感谢提醒更新此答案):要编辑完整模板,请在文档大纲中右键单击控件并选择编辑模板-当前(在VisualStudio或Blend中),将为您生成模板,您可以根据需要进行编辑,seemyanswerhereforscreenshots.以下是针对WindowsPhoneWind

c# - 我可以在 C# 中不指定类名的情况下将静态类作为命名空间导入来调用其方法吗?

我广泛使用了一个特定静态类的成员函数。每次我调用它的方法时都指定类名看起来很讨厌......我可以在不指定类名C#的情况下将静态类导入为命名空间来调用其方法吗? 最佳答案 您正在寻找的功能已添加到C#6.0中这叫做“使用静态”。以下是更多解释和示例的链接:https://msdn.microsoft.com/en-us/magazine/dn879355.aspx 关于c#-我可以在C#中不指定类名的情况下将静态类作为命名空间导入来调用其方法吗?,我们在StackOverflow上找到一

c# - 如何存储对静态类的引用?

所以像这样:publicstaticclassStaticClass{}publicclassInstanceClass{staticStaticClassStaticProperty{get;set;}publicInstanceClass(){InstanceClass.StaticProperty=StaticClass;}}我认为可以这样做,但编译器返回这些错误:statictypescannotbeusedasparametersstatictypescannotbeusedasreturntypes编辑:我知道这行不通,但为什么呢?我想StaticClass存储在内存中的某

c# - C# 中的多态性、重载和泛型

classPoly{publicstaticvoidWriteVal(inti){System.Console.Write("{0}\n",i);}publicstaticvoidWriteVal(strings){System.Console.Write("{0}\n",s);}}classGenWriter{publicstaticvoidWrite(Tx){Poly.WriteVal(x);}}为什么在C#中不接受无辜的(对于C++程序员)方法Write?您可以看到编译器尝试将参数类型T与具体重载相匹配before实例化:错误3Thebestoverloadedmethodmat

c# - 静态类和命名空间有什么区别? (在 C# 中)

我看到的唯一区别是您不能使用“usingstaticClass”声明。因此,我想知道:静态类和命名空间之间真的有区别吗?是否有可能避免每次调用成员函数时都必须重写类名?我在考虑类似于“使用staticClass”的东西。 最佳答案 是的,static类在技术上是一种类型。它可以有成员(字段、方法、事件)。命名空间只能包含类型(它本身不被视为“类型”;typeof(System)是编译时错误)。没有直接等效于为静态类的命名空间添加using指令。但是,您可以声明别名:usingShortName=ReallyReallyLongSta

c# - 多态基础

我现在正在研究继承和多态性,我遇到了这样一个概念,即编译器将评估(使用反射?)什么类型的对象存储在基类型引用中,以便决定在什么方法上运行调用具有覆盖的方法。例如:classShape{publicvirtualvoidDraw(){Console.WriteLine("Drawingshape...");}}classCircle:Shape{publicoverridevoidDraw(){Console.WriteLine("Drawingcircle...");}}staticvoidMain(){ShapetheShape=newCircle();theShape.Draw()

c# - Visual Studio 2008 自定义类项模板,$safeprojectname$ 不协调

只需设置一些快速类和对象项模板,到目前为止一切正常,但我坚持的一件事是$safeprojectname$模板参数。我已将其添加为命名空间部分的一部分并且$registeredorganization$工作正常namespace$registeredorganization$.$safeprojectname${publicclass$safeitemname${public$safeitemname$(){//defaultconstructor}}}我已经进入.vstemplate文件并确保ReplaceParameters="true"所以我在这一点上唯一猜测的是公司名称和项目名称