gethashcode

    15熱度

    4回答

    考慮以下對象的對象: class Route { public int Origin {get; set;} public int Destination {get; set;} } 路線實現平等的運營商。 class Routing { public List<Route> Paths {get; set;} } 我用下面的代碼來實現對路由對象的Ge

    2熱度

    1回答

    可能重複: What is the best algorithm for an overridden System.Object.GetHashCode? 這是衆所周知的我們,如果我們覆蓋的Object的Equals方法在我們的自定義類型,我們應該還覆蓋並提供一種實現方法GetHashCode以支持生成唯一的哈希碼以用於支持Hashtable和Dictionary集合類,並且可以是其他類秒。 這責

    1熱度

    2回答

    我正在考慮爲給定的對象實現我自己的自定義哈希碼......並將其用作我的詞典的key。由於有可能(有可能)2個對象具有相同的哈希碼,我應該重寫哪些額外的運算符,以及應該重寫的是什麼(概念上)? myDictionary.Add(myObj.GetHashCode(),myObj); VS myDictionary.Add(myObj,myObj); 換句話說,是否一個字典使用以下的組合,以

    0熱度

    1回答

    我有一個類的錢,我想知道這個值類的GetHashCode實現的最好的辦法是給那個$ 1!= 1€。具有針對貨幣*值是行不通的加權值。 public class Money : System.IEquatable<Money> { public Money(Currency c, decimal val) { this.Currency = c; th

    1熱度

    1回答

    我在C#的哈希映射中使用了這個函數,像類「Dictionary」。 x,y和z是Int16。 public override int GetHashCode() { return (x << 16) | (UInt16)y; } 我怎麼能擴展到使用所有3個變量? 與任意數量的任何類型的變量,甚至在更一般的情況見What is the best algorithm for an o

    0熱度

    2回答

    GetHashCode的方法可靠性我試圖哈希並保持(散列),其具有約1000個條目IEnumerable<anotherobject>類型的object。我將生成另一個這樣的對象,但這次我想使用這兩個對象的哈希代碼來檢查條目值的任何更改。 基本上,我想知道如果GetHashCode()易於此,無論從性能的角度和可靠性的角度。 如果我必須重寫它,那麼這樣做的好方法是什麼,它總是取決於anothero

    1熱度

    1回答

    我有一個字典,其鍵爲Excel Range對象(不,這不是可協商的),定義如下(類型CellProp是一個包含各種單元格的對象屬性): Dim dic As New Dictionary(Of Excel.Range, CellProp)(New RangeComparer()) 由於密鑰是對象,我需要重載的Equals/GetHashCode的功能。我目前的執行情況如下: Class Ran

    3熱度

    4回答

    我有一個這樣的實體類(有很多東西失蹤): class Parent { private readonly Iesi.Collections.Generic.ISet<Child> children = new Iesi.Collections.Generic.HashedSet<Child>(); public virtual void AddChild(Chi

    2熱度

    1回答

    當我的域模型在數據庫中的複合鍵我會忘記重載Equals當異常/ GetHashCode的 NHibernate.MappingException: composite-id class must override Equals(): 爲什麼它不給我,當同樣的錯誤我有一個非複合ID?

    14熱度

    2回答

    從Artech's blog看,然後我們在評論中進行了討論。由於該博客僅以中文撰寫,因此我在此簡單介紹一下。代碼來重現: [AttributeUsage(AttributeTargets.Class, Inherited = true, AllowMultiple = true)] public abstract class BaseAttribute : Attribute { p