小编maf*_*afu的帖子

在C#属性setter中为ArgumentException分配给'paramName'参数的值?

如果将无效值传递给属性setter并且ArgumentException抛出(或者从它派生的类的可能性),那么应该为paramName参数分配什么值?

value,因为它似乎是实际的论点?

传递财产的名称不是更清楚吗?

c# exception naming-conventions

11
推荐指数
2
解决办法
1971
查看次数

为什么Java不允许通过实例方法隐藏静态方法?

http://docs.oracle.com/javase/tutorial/java/IandI/override.html所示,Java确实允许

  1. 通过实例方法覆盖实例方法
  2. 通过静态方法隐藏静态方法

我的问题是为什么Java不允许通过实例方法隐藏静态超类方法.这可以这样做:

class Base {
    static void foo () {}
}

class Derived extends Base {
    void foo () {}
    void access () {
        foo ();
        Base.foo ();
    }
}
Run Code Online (Sandbox Code Playgroud)

我没有看到上述方法有任何特殊问题 - 它只是像"允许的"隐藏静态的"混乱/复杂".

java inheritance

11
推荐指数
2
解决办法
6701
查看次数

我在哪里可以找到Microsoft .NET Framework开发指南?

我很肯定这本指南存在,但我今天的Google技能似乎已被打破.你能告诉我指向该部分的MSDN的链接吗?

.net msdn

10
推荐指数
1
解决办法
3091
查看次数

我可以使用.NET 4 Code Contracts并与.NET 3.5保持兼容吗?

.NET 4引入了Code Contracts作为一项新功能.我想使用CC,但提供仍可在3.5 SP1中运行的文件.那可能吗?我可以只使用部分新功能吗?显然有可能让CC只进行静态检查而不包含在二进制文件中,这是正确的吗?

我知道CC可用于3.5作为单独的模块,这是一个可行的解决方法,以防我无法使用4版本的CC?功能集有区别吗?

.net-4.0 code-contracts .net-3.5

10
推荐指数
1
解决办法
2743
查看次数

默认密码是否应为空?

我目前正在设计一个需要管理员使用密码登录的系统.由于某些原因,在安装过程中很难设置此密码,但可以在以后更改.

我的想法是这样的:如果我将默认密码保留为空,那么每个管理员都会尽快修复此问题,这是非常不可靠的.如果我使用某种预定义的密码,管理员可能会认为"啊..没有人会认为我的'defaultpassword'是我的密码所以改变并不是很重要."

所以基本的想法是让它变得如此可怕,以至于即使是最懒惰的人也会为此做些什么.

编辑:在我的情况下,首次登录时无法更改密码.必须在XML文件中手动编辑它.这是一个糟糕的环境,但很难改变,这就是我要问的原因.我希望有一个像Windows一样的解决方案.

编辑:我从未触及过这个话题,所以我不熟悉相关问题.我提出了这样一个疯狂的想法!我知道我还需要学到很多东西.我会暂时打开这个,然后接受最多投票的答案.感谢您的见解!

xml security passwords

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

C# - 如何测试代理是否正常工作?

我有一个很大的列表,包括代理服务器及其相应的端口.如果它们正在工作,我该如何检查?

c# proxy

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

如何正确打开文件进行删除?

我认为这是一个完全无足轻重的任务,但它给了我一些头痛.我想打开一个文件以确保我获得独占访问权限,测试某些条件,然后将其删除.

现在我正在使用99%的方法:

FileStream s = null;
try {
    s = new FileStream (
        path,
        FileMode.Open,
        FileAccess.ReadWrite,
        FileShare.None);
    // some stuff about the file is checked here
    s.Dispose ();
    // hope the file is not accessed by someone else...
    File.Delete (path);
    return true;
}
catch (IOException) {
    if (s !=null) s.Dispose ();
    return false;
}
Run Code Online (Sandbox Code Playgroud)

这通常有效,但我认为有一种更好的方法可以避免边缘条件.

使用DeleteOnClose标志打开文件不起作用,因为所述检查(在打开并且已经设置了删除标志后发生)可能表示不应删除该文件.

.net c# file delete-file

10
推荐指数
1
解决办法
1523
查看次数

在int中操作单个字节的最快方法

我发现我的应用程序花了25%的时间在循环中执行此操作:

private static int Diff (int c0, int c1)
{
    unsafe {
        byte* pc0 = (byte*) &c0;
        byte* pc1 = (byte*) &c1;
        int d0 = pc0[0] - pc1[0];
        int d1 = pc0[1] - pc1[1];
        int d2 = pc0[2] - pc1[2];
        int d3 = pc0[3] - pc1[3];
        d0 *= d0;
        d1 *= d1;
        d2 *= d2;
        d3 *= d3;
        return d0 + d1 + d2 + d3;
    }
}
Run Code Online (Sandbox Code Playgroud)

如何提高此方法的性能?我的想法到目前为止:

  1. 最明显的是,这将受益于SIMD,但让我们假设我不想去那里因为它有点麻烦.
  2. 同样适用于较低级别的东西(调用C库,在GPGPU上执行)
  3. 多线程 - 我会用它.

编辑:为方便起见,一些反映真实环境和用例的测试代码.(实际上,涉及的数据更多,并且数据不会在单个大块中进行比较,而是在每个kb的许多块中进行比较.)

public static class ByteCompare …
Run Code Online (Sandbox Code Playgroud)

c# performance unsafe

10
推荐指数
1
解决办法
228
查看次数

如何快速判断列表是否仅包含重复项?

有很多相关的问题,但我正在寻找一个特定于我的案例的解决方案.有一组(通常)14个整数.如何快速判断每个int是否恰好出现两次(即有7对)?值范围从1到35.这里的主要方面是性能.

作为参考,这是我目前的解决方案.编写的内容尽可能地与规范相似,没有考虑到性能,因此我确信可以大大改进:

var pairs = Array
    .GroupBy (x => x)
    .Where (x => x.Count () == 2)
    .Select (x => x.ToList ())
    .ToList ();
IsSevenPairs = pairs.Count == 7;
Run Code Online (Sandbox Code Playgroud)

使用Linq是可选的.我不在乎如何,只要它快:)

编辑:有一个特殊情况,int出现2n次,n> 1.在这种情况下,检查应该失败,即应该有7个不同的对.

编辑:结果 我测试了Ani和Jon的解决方案,经过微小的修改,在目标应用程序的多个基准测试运行期间发现,Ani在我的机器上有大约两倍Jon的吞吐量(在Win7-64上有一些Core 2 Duo).生成整数数组已经需要大约相应的检查,所以我对结果感到满意.谢谢,全部!

.net c# list mahjong duplicates

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

从div id中检索xpath内容

如何检索article-field1中的文本?

<title>Testing</title>
  <link>http://example.org</link>
  <description>Description</description>
  <language>en-us</language>
  <lastBuildDate>Mon, 13 Feb 2012 00:00:00 +0000</lastBuildDate>

  <item>
    <title>Title Here</title>
    <link>http://example.org/2012/03/27/</link>
    <description><![CDATA[
        <div id="article-field1"><a href="http://example.org/test1">Test 1</a></div>
        <div id="article-field2">123</div>
    <pubDate>Tue, 2 Mar 2012 00:00:00 +0000</pubDate>
  </item>
Run Code Online (Sandbox Code Playgroud)

我试过用

//description/div[@id="article-field1"]/text()
Run Code Online (Sandbox Code Playgroud)

有什么建议吗?

谢谢

html xpath

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