草庐IT

use关键词

全部标签

c# - 在 C# 中维护 "clean"using 指令列表有什么好处?

我知道VS2008和Resharper一样有用于清除using指令的remove和sort功能。除了您的代码“干净”并消除引用将来可能不存在的namespace的问题之外,维护一个“干净”的using指令列表有什么好处?更少的代码?更快的编译时间? 最佳答案 如果您总是只有您需要的using指令,并且总是对它们进行适当的排序,那么当您比较两个版本的代码时,您永远不会看到不相关的更改。此外,如果您有一组简洁的using指令,那么任何查看代码的人都可以通过查看using指令来粗略了解将要使用的内容。

c# - C#关键字fixed/unsafe有什么用?

这个问题在这里已经有了答案:C#Unsafe/FixedCode(7个答案)关闭8年前。C#关键字fixed/unsafe有什么用?例如,C#fixedKeyword(unsafe)usingSystem;classProgram{unsafestaticvoidMain(){fixed(char*value="sam"){char*ptr=value;while(*ptr!='\0'){Console.WriteLine(*ptr);++ptr;}}}}为什么我首先需要修复它?

c# - 为什么 'using' 提高了 C# 性能

在大多数情况下,C#编译器似乎可以自动调用Dispose()。像大多数using模式的情况一样:publicvoidSomeMethod(){...using(varfoo=newFoo()){...}//Fooisn'tuseafterhere(obviously)....}因为foo没有被使用(这是一个非常简单的检测)并且因为它没有作为参数提供给另一个方法(这是一个适用于许多用例并且可以扩展的假设),编译器可以自动并立即调用Dispose(),而无需开发人员要求。这意味着在大多数情况下,如果编译器做了一些聪明的工作,using就毫无用处。IDisposable对我来说似乎低级足以被

macOS 更新Xcode,UE4编译C++报错variable “LayerNames” set but not used -Wunused-but-set-variable解决方案

一、背景本人在一次苹果macOS系统更新(手贱点了一下AppStore里的全部更新)后,发现虚幻引擎UE4.27的C++项目无法编译通过,报错信息为:variable“LayerNames”setbutnotused[-Werror,-Wunused-but-set-variable]constTArray*LayerNames=&LayersExpression->GetLayerNames();经过翻查社区资料:LayerNameserrorbrickingmyMacprojects-Platform&Builds-UnrealEngineForums外加本人亲自验证,得出如下两种适用于不

c# - 关键事件 : ProcessCmdKey

我试图在一个小测试Windows窗体应用程序上获得一些键盘响应,我有一个粗略的解决方案,即覆盖ProcessCmdKey。但是,我遇到了几个问题,并且发现了不一致之处。不同的事件:有没有办法在参数refMessagemsg,KeyskeyData中判断even是KeyDown、KeyUp还是KeyPress?KeyPress:我看过的所有地方都说KeyPress,即重复的键盘输入,只发生在字符键上,而箭头键则不会。但是,对于箭头键和字符键,事件处理程序被频繁地调用,并且以相同的方式/具有相同的行为。这是面对KeyPress事件,还是其他什么?理想情况下,我希望有一种方法可以在表单级别处

c# - 我可以重载 throw 关键字吗?

我想重载throw关键字以捕获继承自Exception的类,并让它在实际抛出之前执行一些日志记录和其他操作。这可能吗?还是我必须使用常规函数?我试过:publicclasscSilException:Exception{privatestringm_strMsg;publicoverridevoidthrow(cSilExceptionex){}......} 最佳答案 注册事件AppDomain.FirstChanceException.您可以在实际抛出之前获得所有异常。在事件处理程序中,您可以检查您的exception并执行所需

c# - 在 C# 中使用 "using"关键字

这个问题在这里已经有了答案:Whataretheusesof"using"inC#?(29个答案)关闭8年前。我想知道在C#中“using”关键字有什么用,我是新手..当我们需要使用“使用”关键字时..我用谷歌搜索了一下,对答案不满意。我仍然想从你们这些极客那里了解更多..谢谢

c# - 这个 C# "using"指令是什么?

我在代码示例中看到了这个C#using语句:usingStringFormat=System.Drawing.StringFormat;这是怎么回事? 最佳答案 这是将类型名称别名为更短的名称。同样的语法也可以用于命名空间的别名。参见usingdirective.(根据理查德更新) 关于c#-这个C#"using"指令是什么?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/103

c# - 在库的异步方法中总是使用 'async' 和 'await' 关键字?

总结:在库方法中,什么时候应该使用async和await关键字而不是返回Task直接?我相信我的问题与thisone有关.但是,这个问题是关于.NET4.0的。和TPL,同时我将.NET4.6与async一起使用和await关键字。因此,我认为我的问题可能会得到不同的答案,因为在回答链接问题时这些关键字不存在。说明:我正在为外部WCF服务编写一个简单的包装器,该包装器生成多个SendAsync电话。现在我认为每个包装器方法应该只返回一个Task。直接不用等待。我的理解是async/await应该在应用层使用,不在库中使用。因此,例如,这是我认为我应该为每个包装器方法采用的方法:priv

c# - Dapper 的嵌套 `using` 子句 - 澄清?

我正在了解Dapper如何在幕后工作。但是我看到了这种我不理解的处理模式。大致一般—thisQueryAsync是如何实现的:/*1*/publicasyncTask>QueryAsync(stringsql,Funcprojector,DbConnection_conn,dynamicparam=null)/*2*/{/*3*//*4*/DbDataReaderreader=null;/*5*/boolwasClosed=_conn.State==ConnectionState.Closed;/*6*/try/*7*/{/*8*//*9*/using(varcmd=_conn.Cre