草庐IT

C语言中static的用法

全部标签

c# - EnsureChildControls() 的正确用法是什么?

当我访问依赖于子控件的复合控件的属性时,我最常使用它。但我还将它添加到控件的OnInit中,这样我就可以确保正确添加了隐藏字段。就在一分钟前,我在RenderControl中调用了它,因为我在渲染日历扩展器时遇到问题,它已修复。我开始对何时需要、何时不需要调用EnsureChildControls以及何时应该调用它感到有点困惑。欢迎任何指点。谢谢! 最佳答案 EnsureChildControls会触发CreateChildControl(如果之前未触发)。这必须在页面生命周期中只完成一次。我在OnInit/Page_Init中无条

c# - ArgumentException 的正确用法?

据我所知,ArgumentExceptions通常是这样使用的:publicvoidUpdateUser(Useruser){if(user==null)thrownewArgumentException("user");//etc...}但是如果我有这样的东西怎么办:publicvoidUpdateUser(intidOfUser){varuser=GetUserById(idOfUser);if(user==null)thrownewArgumentException("idOfUser");//etc...}那还是ArgumentException吗?

c# - 无法从高阶函数的用法中推断出类型参数

我有以下高阶函数:publicstaticFuncNot(FuncotherFunc){returnarg=>!otherFunc(arg);}并尝试这样调用它:varisValidStr=LinqUtils.Not(string.IsNullOrWhiteSpace);编译器给我“无法从用法中推断出类型参数”错误。但以下工作:varisValidStr=LinqUtils.Not((strings)=>string.IsNullOrWhiteSpace(s));我想知道有什么区别?string.IsNullOrWhiteSpace已经是具有完全相同签名的非重载函数。如评论中所述,以下

c# - WPF 绑定(bind) : Static resource cannot be resolved

我尝试运行thisexample但我遇到了绑定(bind)问题。设计器突出显示错误Theresource"monthCollection"couldnotberesolved如何将Utility.MonthCollection用作本地资源?XAML部分:C#部分:namespaceFaceReport{internalclassUtility{publicenumReportFor{Choose,All,Group,Person}privatestaticDictionary_dictReportFor;publicstaticDictionaryReportForCollection

c# - 如何使用 C# 查找类或方法的用法?

在VisualStudio中,我可以右键单击类或方法并选择“查找用法”。这为我提供了我的解决方案中使用该段代码的位置列表。如何从我的代码中执行相同的操作? 最佳答案 您需要解析您的代码才能执行此操作。我不认为你可以通过反射(reflection)来做到这一点。MS一直致力于一个名为Roslyn的项目。这是一种用于.NET编译器的API。它应该为您提供所需的东西。查看this发布有关Roslyn项目的详细信息。引自帖子:ThisopensupnewopportunitiesforVSextenderstowritepowerfulre

c# - C# 可以提供 static_assert 吗?

我正在寻找一种在C#编程语言中进行编译时断言的方法,例如C++的BOOST库或新的C++0x标准提供的断言。我的问题是双重的;这可以在标准的、可移植的C#中实现吗?或者,是否可以通过对给定C#编译器的怪癖进行不可移植的假设来实现该行为?在谷歌上快速搜索发现以下链接指向一个technique,我不确定其标准合规性和兼容性。 最佳答案 该方法与其他没有内置静态断言的语言(Delphi、较旧的C++等)相同:找到一种机制将要断言的条件转换为编译器不满意的条件,如果条件是假的。对于C#,最容易利用的机制之一是关于将负文字/常量分配给无符号类

c# - static 和 const 变量之间的区别

这个问题在这里已经有了答案:WhatisthedifferencebetweenconstandstaticinC#?(5个答案)关闭7年前。在声明全局变量时,“static”和“const”有什么区别;namespaceGeneral{publicstaticclassGlobals{publicconstdoubleGMinimum=1e-1;publicconstdoubleGMaximum=1e+1;}}哪个更好(考虑到这些变量永远不会改变)namespaceGeneral{publicstaticclassGlobals{publicstaticdoubleGMinimum1

c# - ConcurrentQueue<StrongBox<T>> 的用法

我基本上是在寻找一个线程中从相机获取的图像集合的容器。由于ConcurrentQueue是线程安全的,所以我想使用它。但是在调试我的代码时,我发现了thisarticle说Iftheelementsaresmall,you’llprobablynevernoticethis.If,however,theelementsholdontolargeresources(e.g.eachelementisahugeimagebitmap),it’spossibleyoucouldseetheimpactofthis(oneworkaroundistoqueueawrapperobject,e.

C# MEF 与静态类的用法

我的解决方案中有一个静态类,用于处理各种程序集。我想通过MEF链接它们,所以我在类中创建了一个字段。[Import(typeof(A))]staticprivateA_a1;然后我有一个方法,我将程序集名称作为参数传递给该方法:publicstaticALoadPackage(stringfilePath){varcatalog=newAggregateCatalog();catalog.Catalogs.Add(newAssemblyCatalog(filePath));var_container=newCompositionContainer(catalog);???}那么现在有没

c# - static关键字是什么意思?

我是C#初学者。我发现有两种方法可以编写代码并输出相同的结果。你能解释一下它们之间的区别吗?什么时候使用#1和#2?#1classProgram{staticvoidMain(){Programmin=newProgram();Console.WriteLine(min.isMin(1,2));Console.ReadLine();}intisMin(intvalue1,intvalue2){intMin;returnMin=Math.Min(value1,value2);}}#2classProgram2{staticvoidMain(){Console.WriteLine(isMi