亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? algorithms.cs

?? C#寫的類似于STL的集合類,首先是C#編寫,可以用于.net變程.
?? CS
?? 第 1 頁 / 共 5 頁
字號:
        /// </summary>
        [Serializable]
        private class ReadOnlyCollection<T> : ICollection<T>
        {
            private ICollection<T> wrappedCollection;  // The collection we are wrapping (never null).

            /// <summary>
            /// Create a ReadOnlyCollection wrapped around the given collection.
            /// </summary>
            /// <param name="wrappedCollection">Collection to wrap.</param>
            public ReadOnlyCollection(ICollection<T> wrappedCollection)
            {
                this.wrappedCollection = wrappedCollection;
            }

            /// <summary>
            /// Throws an NotSupportedException stating that this collection cannot be modified.
            /// </summary>
            private void MethodModifiesCollection()
            {
                throw new NotSupportedException(string.Format(Strings.CannotModifyCollection, "read-only collection"));
            }


            public IEnumerator<T> GetEnumerator()
            { return wrappedCollection.GetEnumerator(); }

            IEnumerator IEnumerable.GetEnumerator()
            { return ((IEnumerable)wrappedCollection).GetEnumerator(); }

            public bool Contains(T item)
            { return wrappedCollection.Contains(item); }

            public void CopyTo(T[] array, int arrayIndex)
            { wrappedCollection.CopyTo(array, arrayIndex); }

            public int Count
            {
                get { return wrappedCollection.Count; }
            }

            public bool IsReadOnly
            {
                get { return true; }
            }

            public void Add(T item)
            { MethodModifiesCollection(); }

            public void Clear()
            { MethodModifiesCollection(); }

            public bool Remove(T item)
            { MethodModifiesCollection(); return false; }
        }

        /// <summary>
        /// Returns a read-only view onto a collection. The returned ICollection&lt;T&gt; interface
        /// only allows operations that do not change the collection: GetEnumerator, Contains, CopyTo,
        /// Count. The ReadOnly property returns false, indicating that the collection is read-only. All other
        /// methods on the interface throw a NotSupportedException.
        /// </summary>
        /// <remarks>The data in the underlying collection is not copied. If the underlying
        /// collection is changed, then the read-only view also changes accordingly.</remarks>
        /// <typeparam name="T">The type of items in the collection.</typeparam>
        /// <param name="collection">The collection to wrap.</param>
        /// <returns>A read-only view onto <paramref name="collection"/>. If <paramref name="collection"/> is null, then null is returned.</returns>
        public static ICollection<T> ReadOnly<T>(ICollection<T> collection)
        {
            if (collection == null)
                return null;
            else
                return new ReadOnlyCollection<T>(collection);
        }

        /// <summary>
        /// The read-only IList&lt;T&gt; implementation that is used by the ReadOnly method.
        /// Methods that modify the list throw a NotSupportedException, methods that don't
        /// modify are fowarded through to the wrapped list.
        /// </summary>
        [Serializable]
        private class ReadOnlyList<T> : IList<T>
        {
            private IList<T> wrappedList;  // The list we are wrapping (never null).

            /// <summary>
            /// Create a ReadOnlyList wrapped around the given list.
            /// </summary>
            /// <param name="wrappedList">List to wrap.</param>
            public ReadOnlyList(IList<T> wrappedList)
            {
                this.wrappedList = wrappedList;
            }

            /// <summary>
            /// Throws an NotSupportedException stating that this collection cannot be modified.
            /// </summary>
            private void MethodModifiesCollection()
            {
                throw new NotSupportedException(string.Format(Strings.CannotModifyCollection, "read-only list"));
            }


            public IEnumerator<T> GetEnumerator()
            { return wrappedList.GetEnumerator(); }

            IEnumerator IEnumerable.GetEnumerator()
            { return ((IEnumerable)wrappedList).GetEnumerator(); }

            public int IndexOf(T item)
            { return wrappedList.IndexOf(item); }

            public bool Contains(T item)
            {  return wrappedList.Contains(item); }

            public void CopyTo(T[] array, int arrayIndex)
            {  wrappedList.CopyTo(array, arrayIndex); }

            public int Count
            {
                get { return wrappedList.Count; }
            }

            public bool IsReadOnly
            {
                get { return true; }
            }

            public T this[int index]
            {
                get { return wrappedList[index]; }
                set { MethodModifiesCollection(); }
            }

            public void Add(T item)
            { MethodModifiesCollection(); }

            public void Clear()
            { MethodModifiesCollection(); }

            public void Insert(int index, T item)
            { MethodModifiesCollection(); }

            public void RemoveAt(int index)
            { MethodModifiesCollection(); }

            public bool Remove(T item)
            { MethodModifiesCollection(); return false; }
        }

        /// <summary>
        /// Returns a read-only view onto a list. The returned IList&lt;T&gt; interface
        /// only allows operations that do not change the list: GetEnumerator, Contains, CopyTo,
        /// Count, IndexOf, and the get accessor of the indexer. 
        /// The IsReadOnly property returns true, indicating that the list is read-only. All other
        /// methods on the interface throw a NotSupportedException.
        /// </summary>
        /// <remarks>The data in the underlying list is not copied. If the underlying
        /// list is changed, then the read-only view also changes accordingly.</remarks>
        /// <typeparam name="T">The type of items in the list.</typeparam>
        /// <param name="list">The list to wrap.</param>
        /// <returns>A read-only view onto <paramref name="list"/>. Returns null if <paramref name="list"/> is null. 
        /// If <paramref name="list"/> is already read-only, returns <paramref name="list"/>.</returns>
        public static IList<T> ReadOnly<T>(IList<T> list)
        {
            if (list == null)
                return null;
            else if (list.IsReadOnly)
                return list;
            else
                return new ReadOnlyList<T>(list);
        }

        /// <summary>
        /// The private class that implements a read-only wrapped for 
        /// IDictionary &lt;TKey,TValue&gt;.
        /// </summary>
        [Serializable]
        private class ReadOnlyDictionary<TKey, TValue> : IDictionary<TKey, TValue>
        {
            // The dictionary that is wrapped
            private IDictionary<TKey, TValue> wrappedDictionary;

            /// <summary>
            /// Create a read-only dictionary wrapped around the given dictionary.
            /// </summary>
            /// <param name="wrappedDictionary">The IDictionary&lt;TKey,TValue&gt; to wrap.</param>
            public ReadOnlyDictionary(IDictionary<TKey, TValue> wrappedDictionary)
            {
                this.wrappedDictionary = wrappedDictionary;
            }

            /// <summary>
            /// Throws an NotSupportedException stating that this collection cannot be modified.
            /// </summary>
            private void MethodModifiesCollection()
            {
                throw new NotSupportedException(string.Format(Strings.CannotModifyCollection, "read-only dictionary"));
            }

            public void Add(TKey key, TValue value)
            { MethodModifiesCollection(); }

            public bool ContainsKey(TKey key)
            { return wrappedDictionary.ContainsKey(key); }

            public ICollection<TKey> Keys
            { 
                get { return ReadOnly(wrappedDictionary.Keys); } 
            }

            public ICollection<TValue> Values
            { 
                get { return ReadOnly(wrappedDictionary.Values); } 
            }

            public bool Remove(TKey key)
            { 
                MethodModifiesCollection();
                return false;  // never reached
            }

            public bool TryGetValue(TKey key, out TValue value)
            { return wrappedDictionary.TryGetValue(key, out value); }

            public TValue this[TKey key]
            {
                get { return wrappedDictionary[key];}
                set { MethodModifiesCollection(); }
            }

            public void Add(KeyValuePair<TKey, TValue> item)
            { MethodModifiesCollection(); }

            public void Clear()
            { MethodModifiesCollection(); }

            public bool Contains(KeyValuePair<TKey, TValue> item)
            { return wrappedDictionary.Contains(item); }

            public void CopyTo(KeyValuePair<TKey, TValue>[] array, int arrayIndex)
            { wrappedDictionary.CopyTo(array, arrayIndex); }

            public int Count
            {
                get { return wrappedDictionary.Count; }
            }

            public bool IsReadOnly
            {
                get { return true; }
            }

            public bool Remove(KeyValuePair<TKey, TValue> item)
            { 
                MethodModifiesCollection();
                return false;     // never reached
            }

            public IEnumerator<KeyValuePair<TKey, TValue>> GetEnumerator()
            { return wrappedDictionary.GetEnumerator(); }

            IEnumerator IEnumerable.GetEnumerator()
            { return ((IEnumerable)wrappedDictionary).GetEnumerator(); }
        }

        /// <summary>
        /// Returns a read-only view onto a dictionary. The returned IDictionary&lt;TKey,TValue&gt; interface
        /// only allows operations that do not change the dictionary. 
        /// The IsReadOnly property returns true, indicating that the dictionary is read-only. All other
        /// methods on the interface throw a NotSupportedException.
        /// </summary>
        /// <remarks>The data in the underlying dictionary is not copied. If the underlying
        /// dictionary is changed, then the read-only view also changes accordingly.</remarks>
        /// <param name="dictionary">The dictionary to wrap.</param>
        /// <returns>A read-only view onto <paramref name="dictionary"/>. Returns null if <paramref name="dictionary"/> is null. 
        /// If <paramref name="dictionary"/> is already read-only, returns <paramref name="dictionary"/>.</returns>
        public static IDictionary<TKey,TValue> ReadOnly<TKey,TValue>(IDictionary<TKey,TValue> dictionary)
        {
            if (dictionary == null)
                return null;
            else if (dictionary.IsReadOnly)
                return dictionary;
            else
                return new ReadOnlyDictionary<TKey,TValue>(dictionary);
        }

        /// <summary>
        ///  The class that provides a typed IEnumerator&lt;T&gt;
        /// view onto an untyped IEnumerator interface.
        /// </summary>
        [Serializable]
        private class TypedEnumerator<T> : IEnumerator<T>
        {
            private IEnumerator wrappedEnumerator;

            /// <summary>
            /// Create a typed IEnumerator&lt;T&gt;
            /// view onto an untyped IEnumerator interface 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区三区在线| 亚洲一区二区视频| 亚洲成av人影院| 亚洲国产一区二区在线播放| 久久综合狠狠综合久久激情 | 欧美亚一区二区| 日本韩国精品在线| 色悠久久久久综合欧美99| 99久久精品国产毛片| av成人老司机| 99国产精品国产精品久久| 91性感美女视频| 91福利社在线观看| 欧美日本一道本| 日韩一区二区免费在线观看| 精品剧情在线观看| 久久日一线二线三线suv| 久久久久久久久99精品| 中文字幕免费在线观看视频一区| 国产精品久久国产精麻豆99网站| 亚洲欧洲日本在线| 亚洲综合在线视频| 国产成人精品综合在线观看| 国产日韩欧美精品综合| 国产精品私人影院| 亚洲综合色噜噜狠狠| 亚洲成人福利片| 久久精品av麻豆的观看方式| 狠狠色狠狠色综合日日91app| 国产九色sp调教91| 91亚洲精品久久久蜜桃网站 | 色综合久久久久综合99| 欧美日韩在线观看一区二区 | 欧美日韩三级一区| 欧美日韩一区二区在线观看 | 蜜桃精品在线观看| 国产麻豆欧美日韩一区| 99久久精品情趣| 欧美精品第1页| 久久精品亚洲精品国产欧美kt∨| 亚洲免费观看高清完整版在线观看熊| 亚洲午夜一区二区| 国产老妇另类xxxxx| 色综合天天综合给合国产| 欧美一区二区精美| 国产精品你懂的| 视频一区二区中文字幕| 粉嫩高潮美女一区二区三区| 欧洲生活片亚洲生活在线观看| 欧美成人官网二区| 亚洲欧美韩国综合色| 欧美美女直播网站| 久久蜜桃香蕉精品一区二区三区| 亚洲黄色尤物视频| 国产一区啦啦啦在线观看| 91久久精品日日躁夜夜躁欧美| 精品国产一区二区亚洲人成毛片| 亚洲欧美日韩国产手机在线 | 国产精品一区二区果冻传媒| 色婷婷av一区| 久久久久久久国产精品影院| 亚洲国产中文字幕| 99久久国产免费看| 26uuu国产日韩综合| 亚洲成人一区二区| gogogo免费视频观看亚洲一| 中文字幕电影一区| 日本一区二区三区久久久久久久久不 | 精品久久国产老人久久综合| 亚洲卡通欧美制服中文| 国产福利精品一区二区| 51精品秘密在线观看| 亚洲乱码中文字幕综合| 国产宾馆实践打屁股91| 日韩欧美激情四射| 亚洲成人av一区二区| 99久久99久久精品免费观看| 欧美精品一区二区三区久久久| 日韩一区精品视频| 欧美视频在线观看一区二区| 综合中文字幕亚洲| 国产高清视频一区| 欧美大片一区二区三区| 亚洲国产一区二区a毛片| 99re这里只有精品首页| 国产日产欧产精品推荐色 | 精品国产人成亚洲区| 五月综合激情日本mⅴ| 色综合咪咪久久| 国产精品国产三级国产aⅴ入口 | caoporm超碰国产精品| 久久中文字幕电影| 麻豆国产欧美日韩综合精品二区| 欧美欧美欧美欧美| 一卡二卡三卡日韩欧美| 一本在线高清不卡dvd| 国产精品久久久久久久蜜臀| 国产精品88888| 国产亚洲va综合人人澡精品| 国产乱一区二区| 久久久国产精品不卡| 国产一区二区三区免费在线观看| 日韩女优av电影| 5月丁香婷婷综合| 日日欢夜夜爽一区| 91精品国产麻豆| 免费成人你懂的| 精品美女被调教视频大全网站| 精品一区中文字幕| 欧美成人r级一区二区三区| 青青草国产成人99久久| 欧美一级午夜免费电影| 捆绑变态av一区二区三区| 欧美大片一区二区| 国产+成+人+亚洲欧洲自线| 中文字幕乱码久久午夜不卡 | 欧美性xxxxxx少妇| 亚洲国产aⅴ天堂久久| 91精品国产一区二区人妖| 最新不卡av在线| 在线免费观看日本一区| 午夜影院久久久| 91麻豆精品91久久久久久清纯| 蜜臀av性久久久久蜜臀aⅴ| 久久夜色精品国产欧美乱极品| 国产成人自拍网| 中文字幕一区二区三区不卡| 日本道免费精品一区二区三区| 亚洲成人综合在线| 欧美哺乳videos| 成人开心网精品视频| 成人免费在线视频观看| 欧美日韩专区在线| 紧缚捆绑精品一区二区| 国产精品久久久久一区二区三区共 | 国产麻豆精品在线观看| 最新热久久免费视频| 欧美日产在线观看| 国产一区二区三区免费| 国产精品福利av| 欧美精三区欧美精三区| 国产精品一区二区久激情瑜伽 | 成人丝袜高跟foot| 一区二区三区精品视频在线| 欧美一级视频精品观看| 成人av在线看| 日韩在线观看一区二区| 欧美激情一区二区三区不卡 | 久久美女高清视频| 色婷婷综合久久久久中文一区二区| 日韩精品欧美精品| 国产三级精品三级| 欧美日韩情趣电影| 国产**成人网毛片九色| 图片区小说区区亚洲影院| 国产日产精品一区| 欧美日韩一区二区三区视频| 久久精品国产一区二区三| 亚洲免费观看视频| 久久婷婷成人综合色| 欧美日韩免费一区二区三区视频| 国产成a人亚洲| 青草国产精品久久久久久| 国产精品网友自拍| 日韩精品自拍偷拍| 欧美主播一区二区三区美女| 国产福利一区二区三区在线视频| 亚洲一二三区视频在线观看| 日本一区二区三区在线观看| 欧美精品久久久久久久多人混战 | 久久精品国产77777蜜臀| 亚洲免费观看高清在线观看| 精品成a人在线观看| 久久在线观看免费| 国产精一区二区三区| 三级成人在线视频| **性色生活片久久毛片| 久久奇米777| 91精品国产综合久久精品app| 91丝袜美腿高跟国产极品老师| 国产一区二区三区免费看| 日av在线不卡| 亚洲综合在线观看视频| 国产精品网站一区| 国产婷婷色一区二区三区四区| 欧美一区二区三区在线| 欧美三级视频在线播放| 91免费版pro下载短视频| 成人综合在线网站| 国产一区二区三区四区五区入口| 蜜桃在线一区二区三区| 天天色综合天天| 亚洲一区二区三区四区在线免费观看 | 日本不卡的三区四区五区| 一区二区三区高清| 亚洲人精品午夜| 中文字幕在线观看一区| 国产欧美日韩激情| 久久精品免视看| 久久这里只有精品视频网|