我想要做的是这样的:我有枚举标记值的枚举.
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#不会将枚举视为结构(即使它们是值类型),因此我无法像这样添加扩展类型.
有没有人知道解决方法?
什么是最有效的算法找到适合空白区域的最大面积的矩形?
假设屏幕看起来像这样('#'代表填充区域):
....................
..............######
##..................
.................###
.................###
#####...............
#####...............
#####...............
Run Code Online (Sandbox Code Playgroud)
一个可能的解决方案是:
....................
..............######
##...++++++++++++...
.....++++++++++++###
.....++++++++++++###
#####++++++++++++...
#####++++++++++++...
#####++++++++++++...
Run Code Online (Sandbox Code Playgroud)
通常我会喜欢找出解决方案.虽然这次我想避免浪费时间自己摸索,因为这对我正在研究的项目有实际用途.有一个众所周知的解决方案吗?
Shog9写道:
您的输入是一个数组(如其他响应所暗示的那样),还是一个以任意大小的定位矩形形式的遮挡列表(在处理窗口位置时窗口系统中可能就是这种情况)?
是的,我有一个跟踪屏幕上放置的一组窗口的结构.我还有一个网格,可以跟踪每条边之间的所有区域,无论它们是空的还是填充的,以及它们左边或顶边的像素位置.我认为有一些修改后的形式可以利用这个属性.你知道吗?
我们有一个初级程序员,根本没有写足够的测试.
我必须每两个小时唠叨他一次,"你有没有写过考试?"
我们尝试过:
我的工作需要高质量的稳定代码,通常每个人都"得到它",而且没有必要推动测试.我们知道我们可以让他写测试,但我们都知道有用的测试是你进入测试时所写的.
你知道更多的动机吗?
我是开发一个非常大的Swing Java Applet的团队的一员.我们的大多数代码都是遗留的,并且有大量的单例引用.我们将它们全部捆绑到一个"应用程序上下文"单例中.我们现在需要的是创建一些方法来分离共享上下文(在当前显示的所有applet之间共享)和非共享上下文(特定于当前显示的每个applet).
但是,我们在调用单例的每个位置都没有ID,也不想将ID传播到所有位置.什么是识别我们正在运行的applet上下文的最简单方法?(我已经尝试搞乱类加载器,线程组,线程ID ......到目前为止,我找不到任何可以让我识别调用原点的东西).
我正在生成一些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)
看起来像包裹那样的文本可能是多行的每个地方都很尴尬.
"图灵完成"的含义是什么意思?
你可以给出一个简单的解释,而不会涉及太多的理论细节吗?
最近我不得不在旧系统上更改一些代码,而不是所有代码都有单元测试.
在进行更改之前,我想编写测试,但是每个类都创建了许多依赖项和其他反模式,这使得测试变得非常困难.
显然,我想重构代码,以便更容易测试,编写测试然后更改它.
这是你的方式吗?或者您是否会花费大量时间编写难以编写的测试,这些测试在重构完成后将被删除?
我的要求:
有谁知道在PHP中编辑PDF的好方法?优选地是开源/零许可证成本方法.:)
我正在考虑打开PDF文件,替换PDF中的文本然后写出PDF的修改版本?
我过去使用FPDF以编程方式创建了PDF文件,但有时发现它有点笨拙.
unit-testing ×2
.net ×1
algorithm ×1
applet ×1
c# ×1
components ×1
enums ×1
flags ×1
geometry ×1
java ×1
legacy ×1
line-breaks ×1
linux ×1
math ×1
pdf ×1
php ×1
private-key ×1
public-key ×1
refactoring ×1
ssh ×1
swing ×1
testing ×1
theory ×1
whitespace ×1
xhtml ×1
xml ×1
xslt ×1
zip ×1