Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C# Таймер с очень маленьким интервалом останавливается не сразу https://www.cyberforum.ru/ csharp-beginners/ thread697755.html
если у таймера поставить очень маленькое время, то timer.Elapsed не всегда может завершится на timer.Stop(); public static System.Timers.Timer timer; public void myTimer_start() { timer = new System.Timers.Timer(); timer.AutoReset = true; timer.Interval = 5000; timer.Elapsed += new System.Timers.ElapsedEventHandler(TimerStart);
Обойти граф в ширину и прочитать текст в вершинах графа C#
Рализовать с помощью списка инцедентности граф из 10 вершин(в которых записаны буквы фамилии и часть имени). Обойти граф в ширину и прочитать текст в вершинах графа. Проанализировать прочитанный текст и переставить буквы так, чтобы фамилия читалась правельно. Снова обойти граф, прочитав новый текст. Требование преподавателя- при работе со стеком(если его использовать) запрещено пользоваться...
C# Замедлится ли работа приведенного кода, если синхронизировать потоки https://www.cyberforum.ru/ csharp-beginners/ thread697615.html
Допустим , мы написали программу, который многопоточно брутит пароли (подбирает). Пример функции потока: void TryPasswords(string pass,int startIndex,int lenght) { for(int i= startIndex;i<startIndex+lenght;i++) { // if(TryPassword(pass)) // WriteToFile(pass);
C# Посчитать определитель матрицы способом разложения по первой строке https://www.cyberforum.ru/ csharp-beginners/ thread697607.html
Добрый вечер, господа! Программа считает определитель матрицы способом разложения по первой строке. Нужно разобраться в коде (не в моем). Помогите пожалуйста. То, что я понял - написал. Спасибо. using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace lab1 {
Написать генератор паролей C#
Добрый день! Хочу написать 2 программы для генерации и проверки пароля. В первой программе нужно ввести номер из 9 цифр и пароль из 4х цифр. По нажатию на кнопку происходит генерация кода из цифр. После чего во второй программе нужно снова ввести номер из 9 цифр и пароль, которая сгенерировала 1ая программа. И соответственно 2 программа должна проверить этот код на подлинность без участия...
C# Сделайте программу для печати таблицы умножения натуральных десятичных чисел размером 10х10 Таблица умножения. Сделайте программу для печати таблицы умножения натуральных десятичных чисел размером 10х10 Пример 4х4: 1 2 3 4 2 4 6 8 3 6 9 12 https://www.cyberforum.ru/ csharp-beginners/ thread697384.html
C# Нужна летиратура, в которой бы описывались работа с событиями, работа с элементами управления https://www.cyberforum.ru/ csharp-beginners/ thread697369.html
Помогите пожалуйста найти летиратуру, в которой бы описывались работа с событиями,работа со всеми элементами управления(toolbox).И если есть желательно книжку по свежее.заранее благодарен
C# Наследование в класса от другого класса и интерфейса
Здравствуйте. Есть интерфейс public interface comp { void GetInfo(); } есть класс
C# Чем отличается правило недопущения провалов от других https://www.cyberforum.ru/ csharp-beginners/ thread697279.html
Расскажите пожалуста чем правило недопущения "провалов" отличается c# от других языков (от С,С++, Java) для оператора switch.В этих языках программирования одна ветвь case может переходить ("проваливаться") в другую. Но почему то в некроторых случаях разрешается переход одной ветви в другую.
C# Реализовать массив списков различных пользовательских типов, с возможностью доступа к методам Есть 151 список List<>, каждый имеет свой тип - пользовательский класс. Можно ли запихнуть все эти списки в массив, чтобы можно было потом обращаться к элементу массив по индексу, а также к метода и свойствам класса. Короче типа такого: массив = new массив(151); массив = new List<MyClass1>(); ... и затем чтобы можно было и добавлять в списки элементы класса, и потом обращаться к их... https://www.cyberforum.ru/ csharp-beginners/ thread697268.html
C# Как вызвать метод в классе
Подскажите как вызвать метод шоу class Matrix1 { protected double Matrix; public Matrix1() { double Matrix = new double; Random rnd = new Random(DateTime.Now.Millisecond); for (int i = 0; i < Matrix.Length; i++)
C# Среди цифрчисла выделить только чётные, из которых составить другое число и вывести Есть код программы using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication2 { class Program { static void Main(string args) https://www.cyberforum.ru/ csharp-beginners/ thread697192.html
4 / 4 / 0
Регистрация: 16.10.2012
Сообщений: 39
14.11.2012, 22:16  [ТС] 0

Реализовать контейнер типа карта с добавленным ему полиморфизмом - C# - Ответ 3699277

14.11.2012, 22:16. Показов 1141. Ответов 3
Метки (Все метки)

Ответ

Цитата Сообщение от kolorotur Посмотреть сообщение
object?
Не понял Вас.
Нужно придать классу Dictionary полиморфизм в изменении типа данных значения.

Добавлено через 6 минут
Откопал чужой код с реализацией контейнера multimap(отличается от map тем, что позволяет хранить неуникальные ключи). В коде не используется готовый класс, а пишется свой.Но, в коде используется левая библиотека BK.Util поэтому некоторая часть кода нерабочая.

Может кто поможет исправить это недоразумение или посоветует как придать готовому классу Dictionary полиморфные свойства.

Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using BK.Util;
 
namespace laba2oop
{
    struct Data
    {
        public string a1;
        public string a2;
        public string a3;
    }
 
    public abstract class Container
    {
        protected object val;
        public object getValue() { return this.val; }
        public abstract bool Add(int key, MultimapBK<int, Container> Dist);
        public abstract bool Delete(int key, MultimapBK<int, Container> Dist);
        public static List<int> Alist = new List<int>();
        public static List<int> Blist = new List<int>();
        public static List<int> Clist = new List<int>();
        public static int Count(MultimapBK<int, Container> a, List<int> list)
        {
            List<int>.Enumerator e = list.GetEnumerator();
            Container buf; int count = 0;
            while (e.MoveNext())
            {
                buf = a.GetFirstItem(e.Current);
 
                while (buf != null)
                {
                    count++;
                    buf = a.GetNextItem(e.Current);
 
                }
            }
            return count;
        }
        public static MultimapBK<int, Container> Union(MultimapBK<int, Container> a, MultimapBK<int, Container> b)
        {
            Container.Clist.Clear(); 
            MultimapBK<int, Container> c = new MultimapBK<int, Container>();
            List<int>.Enumerator e1 = Container.Alist.GetEnumerator();
            List<int>.Enumerator e2 = Container.Blist.GetEnumerator();
            Container buf1, buf2;
            while (e1.MoveNext())
            {
                buf1 = a.GetFirstItem(e1.Current);
                while (buf1 != null)
                {
                    c.Add(e1.Current, buf1);
                    Container.Clist.Add(e1.Current);
                    buf1 = a.GetNextItem(e1.Current);
                }
            }
            while (e2.MoveNext())
            {
                buf2 = b.GetFirstItem(e2.Current);
                while (buf2 != null)
                {
                    if (!Container.Contain(c, e2.Current, buf2))
                    {
                        c.Add(e2.Current, buf2);
                        Container.Clist.Add(e2.Current);
                    }
                    buf2 = b.GetNextItem(e2.Current);
                }
            }
            return c;
        }
 
        public static MultimapBK<int, Container> Inteseption(MultimapBK<int, Container> a, MultimapBK<int, Container> b)
        {
            Container.Clist.Clear();
            MultimapBK<int, Container> c = new MultimapBK<int, Container>();
            List<int>.Enumerator e1 = Container.Alist.GetEnumerator();
            List<int>.Enumerator e2 = Container.Blist.GetEnumerator();
            Container buf1, buf2;
            while (e1.MoveNext())
            {
                buf1 = a.GetFirstItem(e1.Current);
                while (buf1 != null)
                {
                    if (Container.Contain(b, e1.Current, buf1) == true)
                    {
                        c.Add(e1.Current, buf1);
                        Container.Clist.Add(e1.Current);
                    }
                    buf1 = a.GetNextItem(e1.Current);
                }
            }
            while (e2.MoveNext())
            {
                buf2 = b.GetFirstItem(e2.Current);
                while (buf2 != null)
                {
                    if (Container.Contain(a, e2.Current, buf2) == true)
                        if (!Container.Contain(c, e2.Current, buf2))
                        {
                            c.Add(e2.Current, buf2);
                            Container.Clist.Add(e2.Current);
                        }
                    buf2 = b.GetNextItem(e2.Current);
                }
            }
            return c;
        }
        public static bool Contain(MultimapBK<int, Container> a, int key, Container val)
        {
            Container buf;
            buf = a.GetFirstItem(key);
            while (buf != null)
            {
                if (buf.Equals(val)) return true;
                buf = a.GetNextItem(key);
 
            }
            return false;
        }
 
    }
 
 
    class Integ : Container
    {
        public Integ(int a)
        {
            this.val = a;
        }
 
        public override bool Equals(Object c)
        {
            if (c.GetType() != this.GetType()) return false;
            Container a = (Container)c;
            int g1 = (int)a.getValue(), g2 = (int)this.val;
            if (g1 == g2)
                return true;
            return false;
        }
 
        public override bool Add(int key, MultimapBK<int, Container> Dist)
        {
            Container buf = Dist.GetFirstItem(key);
            while (buf != null)
            {
                if (buf.Equals(this)) return false;
                buf = Dist.GetNextItem(key);
            }
            Dist.Add(key, this);
            return true;
        }
 
        public override bool Delete(int key, MultimapBK<int, Container> Dist)
        {
            Container buf = Dist.GetFirstItem(key);
            while (buf != null)
            {
                if (buf.Equals(this)) { Dist.Delete(key, this); return true; }
                buf = Dist.GetNextItem(key);
            }
            return false;
        }
 
 
 
    }
    class cString : Container
    {
        public cString(string a)
        {
            this.val = a;
        }
 
 
        public override bool Equals(Object c)
        {
            if (c.GetType() != this.GetType()) return false;
            Container a = (Container)c;
            string g1 = (string)a.getValue(), g2 = (string)this.val;
            if (g1 == g2)
                return true;
            return false;
        }
        public override bool Add(int key, MultimapBK<int, Container> Dist)
        {
 
            Container buf = Dist.GetFirstItem(key);
 
            while (buf != null)
            {
                if (buf.Equals(this)) return false;
                buf = Dist.GetNextItem(key);
            }
            Dist.Add(key, this);
            return true;
        }
 
        public override bool Delete(int key, MultimapBK<int, Container> Dist)
        {
            Container buf = Dist.GetFirstItem(key);
            while (buf != null)
            {
                if (buf.Equals(this)) { Dist.Delete(key, this); return true; }
                buf = Dist.GetNextItem(key);
            }
            return false;
        }
    }
 
    class cStruct : Container
    {
        public cStruct(Data a)
        {
            this.val = a;
        }
 
 
        public override bool Equals(Object c)
        {
            if (c.GetType() != this.GetType()) return false;
            Container a = (Container)c;
            Data g1 = (Data)a.getValue(), g2 = (Data)this.val;
            if ((g1.a1 == g2.a1) && (g1.a2 == g2.a2) && (g1.a3 == g2.a3))
                return true;
            return false;
        }
        public override bool Add(int key, MultimapBK<int, Container> Dist)
        {
            Container buf = Dist.GetFirstItem(key);
            while (buf != null)
            {
                if (buf.Equals(this)) return false;
                buf = Dist.GetNextItem(key);
            }
            Dist.Add(key, this);
            return true;
        }
 
        public override bool Delete(int key, MultimapBK<int, Container> Dist)
        {
            Container buf = Dist.GetFirstItem(key);
            while (buf != null)
            {
                if (buf.Equals(this)) { Dist.Delete(key, this); return true; }
                buf = Dist.GetNextItem(key);
            }
            return false;
        }
    }
 
 
    static class Program
    {
 
        /// <summary>
        /// Главная точка входа для приложения.
        /// </summary>
        [STAThread]
        static void Main()
        {      
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
 
        }
    }
}


Добавлено через 1 час 40 минут
kolorotur,
Вы об этом говорили?
Код
public override bool Equals(Object)


Вернуться к обсуждению:
Реализовать контейнер типа карта с добавленным ему полиморфизмом C#
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.11.2012, 22:16
Готовые ответы и решения:

Геометрические фигуры: реализовать наследование с полиморфизмом
Здравствуйте, Помогите пожалуйста реализовать следующую идею: Есть общий класс: фигура Его...

Массив типа set (контейнер)
Как создать массив set'ов (контейнеров) и как с ним дальше работать? если возможно, напишите...

Ассоциативный контейнер типа map
Привет! Помогите пожалуйста найти ошибку. Программа с Ассоциативным контейнером типа map&lt;string,...

Реализовать контейнер multiset к классу
Здравствуйте у меня есть класс и мне надо реализовать контейнер multiset к этому классу. Проблема в...

3
14.11.2012, 22:16
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.11.2012, 22:16
Помогаю со студенческими работами здесь

Можно ли на базе массива реализовать контейнер
Можно ли на базе массива реализовать контейнер? Если да, то как это будет происходить?

Передача в контейнер map пользовательского типа данных
Доброго времени суток, дамы и господа. Интересует такая задачка: создать контейнер типа map,...

Вывод типа элемента контейнера из итератора на контейнер
У меня есть шаблонная функция которая принимает итератор на начало и конец контейнера контейнеров,...

Контейнер для набора элементов типа ProgressBar
Доброго времени суток! Необходимо создать пользовательский интерфейс в виде таблицы, где строки...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru