小编Rog*_*ger的帖子

为什么这个List <>.IndexOf代码比List [i]和手动比较快得多?

我在这段代码上运行AQTime,我发现.IndexOf占用了16%的时间而接近80%的另一块......他们似乎使用相同的IsEqual和其他例程.被称为116,000次,插入30,000件物品.List <>对象都没有超过200个元素.(我可能错误地使用AQTime,我正在研究这个)

class PointD : IEquatable<PointD>
{
    public double X, Y, Z;

    bool IEquatable<PointD>.Equals(PointD other)
    {
        return ((X == other.X) && (Y == other.Y) && (Z == other.Z));
    }
}

class PerfTest
{
    readonly List<PointD> _pCoord3Points = new List<PointD>();
    public int NewPoints;
    public int TotalPoints;

    public PerfTest()
    {
        NewPoints = 0;
        TotalPoints = 0;
    }
    public int CheckPointIndexOf(PointD pt)
    {
        int retIndex = _pCoord3Points.IndexOf(pt);
        if (retIndex < 0)
        {
            _pCoord3Points.Add(pt);
            NewPoints++;
        }
        TotalPoints++;
        return retIndex;    
    }

    public int CheckPointForBreak(PointD pt) …
Run Code Online (Sandbox Code Playgroud)

c# performance indexof

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

返回文件名

使用openFileDialog不会返回正在使用的文件名,我只想要文件名我不在乎它是否正在使用

该文件很可能正在使用中,我只是希望能够找到该文件并检索其名称和位置以执行连接.

OpenFileDialog一直工作,直到我选择文件,然后它有一个弹出窗口,显示"正在使用文件".我不希望它检查,只返回文件名.

c# .net-3.5

5
推荐指数
1
解决办法
172
查看次数

标签 统计

c# ×2

.net-3.5 ×1

indexof ×1

performance ×1