jjzjj

Declaration

全部标签

c# - Resharper 中令人困惑的代码突出显示

在某些R#推荐的编辑之后,R#将代码块的背景着色为浅宝蓝色,并在滚动条旁边放置一个相同颜色的标记。这不是错误,甚至不是建议。它似乎是一个临时标志,如果您关闭并重新打开文件,它会清除。重新创建的步骤:写一行代码,如:stringstr=string.Format("{0}",1);请注意,R#会将str变量标记为浅灰色,因为它从未被使用过。在变量上按Alt+Enter并从R#上下文菜单中选择RemoveDeclaration看到这行代码转灯宝蓝色...将光标悬停在滚动条标记上,您看到的只是代码...有谁知道这种“标记”的含义/用处吗?编辑:我的Resharper版本是4.5,在VS200

c# - 声明中缺少部分修饰符..存在这种类型的另一个部分声明。我是初学者,只是在看书

我是初学者,我正在看书做练习。下面是我的代码,我得到了这个“'Windowsform.Form1'类型声明缺少部分修饰符;存在此类型的另一个部分声明”。我该怎么办?我的代码如下:usingSystem;usingSystem.Windows.Forms;namespaceWindowsform{publicclassForm1:Form{privateTextBoxtxtEnter;privateLabellblDisplay;privateButtonbtnOk;publicForm1(){this.txtEnter=newTextBox();this.lblDisplay=newL

c# - 为什么需要声明

我目前正在教一位同事.Net,他问了我一个让我很困惑的问题。为什么要申报?如果var是隐式类型,为什么我们还要声明?Animalanimal=newAnimal();成为varanimal=newAnimal();可以变成animal=newAnimal();隐式类型仍然意味着这是一个静态类型变量。如果将两种不同的类型分配给变量,如果它们不共享基类(对象除外),则可能是编译器错误。是否存在无法完成的技术原因,或者我们喜欢的风格 最佳答案 当然,是可能的。我能想到您不想要这个的几个原因:变量的范围是什么?如果您不告诉编译器,则不清楚。

c# - 为什么我不能在 C# 中使用 var 声明常量?

这个问题在这里已经有了答案:Type-inferringaconstantinC#(11个答案)关闭9年前。这个:constinta=5;编译得很好,而constvara=5;不会...而:vara=5;编译和这个一样好:inta=5;为什么?

c# - 声明变量并使用 TryParse 在同一行对其进行初始化有任何问题吗?

这个示例是用C#编写的,但我希望可以同样轻松地应用于其他示例。我最近发现以下似乎工作得很好:inti=Int32.TryParse(SomeString,outi)?i:-1;不知何故,似乎变量i在它出现在TryParse中时在技术上不应该是可访问的。或者我假设inti有效地声明了变量是否正确,即使还没有语句结束? 最佳答案 inti声明变量,并在out参数中使用它来初始化它。由于必须在结果之前评估谓词,因此i在使用之前既已声明又已初始化。(out参数必须在返回前赋值,所以无论如何肯定是初始化了。)也就是说,我的一些同事会因为风格原

javascript - 可以在变量声明中添加条件吗?

这对我来说没有意义,但我有一种感觉,我看到了一段使用这个的代码:varabc=def||ghi;我的问题是,这有效吗?我们可以在变量声明中添加条件吗?我想答案是否定的,但我心里有这样的想法,我曾经在代码中看到过类似的东西。 最佳答案 这给abcdef的值,如果它不是假的(即不是false,null、undefined、0或空字符串),如果不是,则为ghi的值。这相当于:varabc;if(def)abc=def;elseabc=ghi;这通常用于选项:functionmyfunc(opts){varmything=opts.myth

javascript - Javascript 中不明确的函数声明

我是Javascript的新手,对函数声明的工作方式感到困惑。我对此做了一些测试并得到了一些有趣的结果:say();functionsay(){alert("say");}前向声明有效并弹出“say”对面say();say=function(){alert("say");}没用,虽然它也声明了一个函数对象如果我们声明函数并在之后重新声明:functionsay(){alert("speak");}say();functionsay(){alert("say");}我得到的是“说”而不是“说”。太惊喜了!好的。似乎只有最新的函数声明有效。然后让我们先声明函数对象,然后声明一个“常规”函数

javascript - 这个错误 "Declaration of instance field not allowed after declaration of instance method."是什么意思

在我的Angular2项目中,我收到此错误:“在声明实例方法之后不允许声明实例字段。相反,这应该出现在类/接口(interface)的开头。(成员排序)”我想了解如何解决这个问题以及我为什么会遇到这个问题。错误与下一段代码中的私有(private)函数有关:exportclassHomeComponentimplementsOnInit{publicerror:string;publicshirts=[];constructor(publicrest:RestService,publicscService:ShoppingCartService,publicsnackBar:MdSna

PHP:为什么将 "Strict standards: Declaration of x should be compatible with y"应用于静态方法?

如果您编写如下代码,PHP警告“严格标准:x的声明应与y兼容”会警告您:classA{functionfoo($x){..}}classBextendsA{functionfoo(){..}}这是明智的,因为像“$a”这样的对象引用,您认为它是A,但在运行时可能会变成B,因此像$a->foo(3)这样的动态调度方法调用可能最终调用B::foo()时使用了错误数量的参数。我的问题是:为什么同样的警告适用于不是动态调度的静态方法?classX{staticfunctionbar($x){..}}classYextendsX{staticfunctionbar(){..}}在这个例子中,函数

php - 内联接口(interface)实现——在声明时实现接口(interface)方法

我来自java,在那里我们可以做这样的事情:Action.java:publicinterfaceAction{publicvoidperformAction();}主类.java:publicclassMainClass{publicstaticvoidmain(String[]args){//programentrypointActionaction=newAction(){publicvoidperformAction(){//customimplementationoftheperformActionmethod}};action.performAction();//wille