我有以下代码,我用它作为示例来说明不同的场景:
public static void MethodWithOptionalGuid(Guid id = default(Guid)) { }
public static void MethodWithOptionalInteger(int id = 2) { }
public static void MethodWithOptionalString(string id = "33344aaa") { }
public static void MethodWithoutOptionalParameter(int id, Guid longId) { }
static void Main(string[] args)
{
var methods = typeof(Program).GetMethods(BindingFlags.Public | BindingFlags.Static).ToList();
foreach (var method in methods)
{
PrintMethodDetails(method);
}
Console.ReadLine();
}
static void PrintMethodDetails(MethodInfo method)
{
Console.WriteLine(method.Name);
foreach (var parameter in method.GetParameters().ToList())
{
Console.WriteLine(parameter.Name +
" of type " + parameter.ParameterType.ToString() +
" …Run Code Online (Sandbox Code Playgroud) c# reflection value-type optional-parameters base-class-library
我正在开发一个Sudoku程序.目前,我可以生成一个有效的数独板,但我不知道我是否生成了一个简单或困难的板.
这是我的方法:
我开始生成全板.最后一块板是空的.
我开始用全板的值填充21个随机单元格.
我发现最终电路板的所有解决方案,并且对于每个电池,计算整个电路板解决方案的差异,选择最多的电路板并填充它.(这个想法来自这里:如何使用独特的解决方案生成数独板 首先回答)
这样做,直到你只有一个解决方案.
现在,我不知道21个随机细胞的这种方法是否合适.有时我会在前21个随机单元格之后有很多解决方案,有时候会有一些.
目前我在平均时间:0,3秒生成最终板.
我想告诉我一个不同的快速方法,除了这个,有21个随机单元格,也许我可以在哪里排列板的难度.
谢谢!
我有这两种形状:

拳头图片代码:
<Path Fill="Orange">
<Path.Data>
<PathGeometry>
<PathFigure StartPoint="0,100">
<BezierSegment Point1="50,110" Point2="50,110" Point3="100,100"></BezierSegment>
<LineSegment Point="100,80"></LineSegment>
<LineSegment Point="120,90"></LineSegment>
<LineSegment Point="120,70"></LineSegment>
<LineSegment Point="100,60"></LineSegment>
<LineSegment Point="100,20"></LineSegment>
<LineSegment Point="80,0"></LineSegment>
<LineSegment Point="20,0"></LineSegment>
<LineSegment Point="0,20"></LineSegment>
<LineSegment Point="0,40"></LineSegment>
<LineSegment Point="-20,20"></LineSegment>
<LineSegment Point="-20,40"></LineSegment>
<LineSegment Point="0,60"></LineSegment>
</PathFigure>
</PathGeometry>
</Path.Data>
</Path>
Run Code Online (Sandbox Code Playgroud)
第二张图片代码:
<Path Fill="Orange">
<Path.Data>
<PathGeometry>
<PathFigure>
<LineSegment Point="0,25"></LineSegment>
<LineSegment Point="250,25"></LineSegment>
<LineSegment Point="250,0"></LineSegment>
</PathFigure>
</PathGeometry>
</Path.Data>
</Path>
Run Code Online (Sandbox Code Playgroud)
我如何将它们组合成这样的东西(忽略文本):

我需要在C#(而不是xaml)中完成.谢谢!