11得票2回答
如何清理Crystal Reports ReportDocument对象使用的资源是最佳方式?

我正在开发一个使用Crystal Reports进行报告的应用程序。它会在ReportDocument对象中打开特定的报告,执行必要的操作,然后关闭报告。using (var report = OpenReport(reportSourceInfo)) { // Do stuff wi...

18得票5回答
如何在我的C#项目中找到所有静态变量?

我想用多个线程并行运行我的命令行程序的一部分,但我害怕可能会有一些静态变量没有被修正(例如通过使其成为[ThreadStatic])。是否有任何工具或简单的方法可以在我的项目中找到这些问题? 当然,简单搜索"static"并不能帮助太多:我有很多静态方法可以使用,并且与任意数量的线程都可以正...

18得票3回答
整个解决方案的全局抑制(C#)

你们中是否有人知道一种方法,我可以抑制整个解决方案的CA2000警告? 我在考虑像这样一个GlobalSuppressions类,其中包含以下代码行:[assembly: SuppressMessage("Microsoft.Reliability", "CA2000:DisposeObjec...

7得票8回答
C++代码分析工具

我目前正在学习C++,由于还在学习阶段,所以经常犯错误。 由于C++是一种非常宽容的语言,因此往往需要花费很长时间才能确定问题所在——因为编译器让我得以逃脱很多错误。我意识到这种灵活性是C++的主要优势之一,但它也使得基础语言的学习变得困难。 是否有一些工具可以分析我的代码,并根据最佳实践或合...

22得票1回答
在C#代码中检测递归调用

我想查找代码中的所有递归调用。 如果我在Visual Studio中打开文件,我会在编辑器左侧得到“递归调用”图标。 我想检查整个解决方案中是否存在这样的调用。 我使用了Resharper命令行工具和VS的插件Resharper - 代码检查,但没有运气,这个规则没有应用到它们的规则集...

13得票2回答
有人能解释一下Controller Action上的CA1822的目的和解决方案吗?

Error CA1822 : Microsoft.Performance : The 'this' parameter (or 'Me' in Visual Basic) of 'SomeController.AnAction(string, string)' is never used...

54得票7回答
如何使用gcc确定嵌入式系统中的最大堆栈使用情况?

我正在编写嵌入式系统的启动代码——加载 main() 函数前的初始堆栈指针的代码——我需要告诉它我的应用程序将使用多少字节的堆栈(或者一些更大的保守估计值)。 有人告诉我,gcc 编译器现在有一个 -fstack-usage 选项和一个 -fcallgraph-info 选项,可以用来静态地...

60得票6回答
有哪些用于C#的代码检查工具?

是否有类似于C#的“lint”工具? 我已经让编译器标记警告为错误,并且我已经安装了Stylecop,但这些只能捕捉最明显的错误。 除此之外,还有其他必备工具可以指出我可能犯的愚蠢错误吗?

11得票2回答
为什么我在这段代码中的一个输出参数上得到了Code Analysis CA1062?

我有一段非常简单的代码(从原始代码中简化而来,所以我知道这不是一段非常聪明的代码),当我在Visual Studio 2010中编译并使用Code Analysis时,会给出一个警告CA1062:验证公共方法的参数。public class Foo { protected static...

7得票2回答
生成源代码文件之间的“包含”关系图

我想要对代码进行一些重构,特别是在文件之间的“include”关系上。这里有相当多的文件,为了开始工作,最好有一个列表、图表或者列形图,以便一眼就能看到哪些文件被包含在哪里。 (在许多情况下,一个给定的文件会被多个其他文件包含,所以图表将是一个DAG而不是树。没有循环。) 我正在使用TeX...