问题列表 - 第70页

任何人都知道缺乏枚举通用约束的好方法吗?

我想要做的是这样的:我有枚举标记值的枚举.

public static class EnumExtension
{
    public static bool IsSet<T>( this T input, T matchTo ) 
        where T:enum //the constraint I want that doesn't exist in C#3
    {    
        return (input & matchTo) != 0;
    }
}
Run Code Online (Sandbox Code Playgroud)

那么我可以这样做:

MyEnum tester = MyEnum.FlagA | MyEnum.FlagB

if( tester.IsSet( MyEnum.FlagA ) )
    //act on flag a
Run Code Online (Sandbox Code Playgroud)

不幸的是,C#的通用,其中约束没有枚举限制,只有类和结构.C#不会将枚举视为结构(即使它们是值类型),因此我无法像这样添加扩展类型.

有没有人知道解决方法?

.net c# enums flags

87
推荐指数
6
解决办法
2万
查看次数

拼图:找到最大的矩形(最大矩形问题)

什么是最有效的算法找到适合空白区域的最大面积的矩形?

假设屏幕看起来像这样('#'代表填充区域):

....................
..............######
##..................
.................###
.................###
#####...............
#####...............
#####...............
Run Code Online (Sandbox Code Playgroud)

一个可能的解决方案是:

....................
..............######
##...++++++++++++...
.....++++++++++++###
.....++++++++++++###
#####++++++++++++...
#####++++++++++++...
#####++++++++++++...
Run Code Online (Sandbox Code Playgroud)

通常我会喜欢找出解决方案.虽然这次我想避免浪费时间自己摸索,因为这对我正在研究的项目有实际用途.有一个众所周知的解决方案吗?

Shog9写道:

您的输入是一个数组(如其他响应所暗示的那样),还是一个以任意大小的定位矩形形式的遮挡列表(在处理窗口位置时窗口系统中可能就是这种情况)?

是的,我有一个跟踪屏幕上放置的一组窗口的结构.我还有一个网格,可以跟踪每条边之间的所有区域,无论它们是空的还是填充的,以及它们左边或顶边的像素位置.我认为有一些修改后的形式可以利用这个属性.你知道吗?

language-agnostic algorithm math geometry

38
推荐指数
3
解决办法
3万
查看次数

如何让初级程序员编写测试?

我们有一个初级程序员,根本没有写足够的测试.
我必须每两个小时唠叨他一次,"你有没有写过考试?"
我们尝试过:

  • 表明设计变得更简单
  • 显示它可以防止缺陷
  • 让它成为一个自负的事情只说坏程序员不会
  • 本周末,2名团队成员不得不前来工作,因为他的代码有一个NULL参考,他没有测试

我的工作需要高质量的稳定代码,通常每个人都"得到它",而且没有必要推动测试.我们知道我们可以让他写测试,但我们都知道有用的测试是你进入测试时所写的.

你知道更多的动机吗?

testing unit-testing

108
推荐指数
8
解决办法
7915
查看次数

59
推荐指数
2
解决办法
10万
查看次数

如何在不传递ID的情况下识别运行的Java Applet上下文?

我是开发一个非常大的Swing Java Applet的团队的一员.我们的大多数代码都是遗留的,并且有大量的单例引用.我们将它们全部捆绑到一个"应用程序上下文"单例中.我们现在需要的是创建一些方法来分离共享上下文(在当前显示的所有applet之间共享)和非共享上下文(特定于当前显示的每个applet).

但是,我们在调用单例的每个位置都没有ID,也不想将ID传播到所有位置.什么是识别我们正在运行的applet上下文的最简单方法?(我已经尝试搞乱类加载器,线程组,线程ID ......到目前为止,我找不到任何可以让我识别调用原点的东西).

java applet swing

6
推荐指数
1
解决办法
1541
查看次数

对XML文档中的换行符敏感是"不好的做法"吗?

我正在生成一些XML文档,当涉及到地址部分时,我的片段看起来像这样:

<Address>15 Sample St
Example Bay
Some Country</Address>
Run Code Online (Sandbox Code Playgroud)

我将它转换为XHTML的XSLT有一些时髦的递归模板,可以将字符串中的换行符转换为<br/>标签.

这一切都很好; 但依赖XML文档中的换行符会被视为"不良做法"吗?如果是这样,建议我这样做吗?

<Address><Line>15 Sample St</Line>
<Line>Example Bay</Line>
<Line>Some Country</Line></Address>
Run Code Online (Sandbox Code Playgroud)

看起来像包裹那样的文本可能是多行的每个地方都很尴尬.

xml xslt xhtml whitespace line-breaks

8
推荐指数
1
解决办法
2335
查看次数

什么是图灵完成?

"图灵完成"的含义是什么意思?

你可以给出一个简单的解释,而不会涉及太多的理论细节吗?

theory turing-machines turing-complete

461
推荐指数
8
解决办法
15万
查看次数

如何测试/更改未经测试和不可测试的代码?

最近我不得不在旧系统上更改一些代码,而不是所有代码都有单元测试.
在进行更改之前,我想编写测试,但是每个类都创建了许多依赖项和其他反模式,这使得测试变得非常困难.
显然,我想重构代码,以便更容易测试,编写测试然后更改它.
这是你的方式吗?或者您是否会花费大量时间编写难以编写的测试,这些测试在重构完成后将被删除?

legacy refactoring unit-testing

9
推荐指数
1
解决办法
1106
查看次数

Compact Framework的Zip库选项?

我的要求:

  • 支持.NET Compact Framework 2.0和Windows Mobile 6.0设备.
  • 只需将内容解压缩到存储卡上的目录即可.不需要创建zip文件.
  • 必须能够在公司/商业软件中使用.
  • 可以是开源的,但没有GPL或其他病毒许可证.

我见过用于CF库的Xceed Zip.还有哪些其他选择?

zip components compact-framework windows-mobile

9
推荐指数
2
解决办法
6894
查看次数

用PHP编辑PDF?

有谁知道在PHP中编辑PDF的好方法?优选地是开源/零许可证成本方法.:)

我正在考虑打开PDF文件,替换PDF中的文本然后写出PDF的修改版本?

我过去使用FPDF以编程方式创建了PDF文件,但有时发现它有点笨拙.

php pdf

78
推荐指数
3
解决办法
11万
查看次数