Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Общие вопросы .NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.09.2010, 22:14   #1
Денис89
 
Регистрация: 05.09.2010
Сообщений: 9
По умолчанию Динамический массив в С#

Нужно создать массив, размер изменялся по мере его заполнения, например так:
Код:
int n,a=0,b=0;
int[,]inputMatrix=new int[a,b];
FileStream f;
try {
......
.....			
do{
     try{
	n=f.ReadByte();
	if (n!=10) a++;
	if (n!=32) b++;
	inputMatrix[a,b]=f.ReadByte();
}catch(IOException exc){  
Console.WriteLine(exc.Message);
break;
}while(n!=-1);
но неработает.....

Последний раз редактировалось Stilet; 06.09.2010 в 08:49.
Денис89 вне форума Ответить с цитированием
Старый 05.09.2010, 22:28   #2
vlad_light
Пользователь
 
Регистрация: 27.08.2010
Сообщений: 95
По умолчанию

я в С# вообще не шарю, но попробую с STL::vector<T>
И разве массив определяется, как a[n,], а не a[n][]?
vlad_light вне форума Ответить с цитированием
Старый 05.09.2010, 22:42   #3
ZaRDaK
Форумчанин
 
Регистрация: 01.09.2009
Сообщений: 197
По умолчанию

В C# динамических массивов как таковых нет. Зато есть списки:
http://www.victorchen.info/how-to-us...ric-list-in-c/
http://dotnetperls.com/list
ZaRDaK вне форума Ответить с цитированием
Старый 06.09.2010, 00:33   #4
Скарам
Дружите с Linq ;)
Форумчанин
 
Аватар для Скарам
 
Регистрация: 15.10.2008
Сообщений: 822
По умолчанию

Ну думаю,что лучше использовать ArrayList...хотя те же яйца,только в профиль..)))
Не давай организму поблажки, каждый день тренируй его в шашки..
Скарам вне форума Ответить с цитированием
Старый 06.09.2010, 21:51   #5
Денис89
 
Регистрация: 05.09.2010
Сообщений: 9
Хорошо

Спасибо, будем разбиратся....)
Денис89 вне форума Ответить с цитированием
Старый 09.09.2010, 19:36   #6
Денис89
 
Регистрация: 05.09.2010
Сообщений: 9
По умолчанию

Но с помощью класса List<Т> или ArrayList можна создать только одномерный массив... А как быть если нужно многомерный...????

Если так,то как обращатся к елементам массива?????
ArrayList a = new ArrayList();
a.Add(new ArrayList());

Последний раз редактировалось Денис89; 09.09.2010 в 20:18.
Денис89 вне форума Ответить с цитированием
Старый 09.09.2010, 22:17   #7
m0nax
Форумчанин
 
Аватар для m0nax
 
Регистрация: 25.09.2009
Сообщений: 525
По умолчанию

Код:
            List<List<int>> matrix = new List<List<int>>();
            matrix.Add(new List<int>() { 1, 2, 3 });
            matrix.Add(new List<int>() { 3, 2, 1 });    

            matrix[1][2] = 100500;
но это изврат
лучше выясни сначала размер матрицы, а потом создай обычный 2 мерный массив
m0nax вне форума Ответить с цитированием
Старый 09.09.2010, 22:42   #8
Денис89
 
Регистрация: 05.09.2010
Сообщений: 9
По умолчанию

Допустим определить размер я смогу, но мне постояно нужно будеть массив врезать... а к сожаленью в массивах нет метода TrimToSize
Как быть???
Денис89 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамический массив Porsche Общие вопросы C/C++ 5 26.05.2010 08:04
динамический массив!!!! zarinka0992 Помощь студентам 1 11.02.2010 09:06
динамический массив Dimon Паскаль, Turbo Pascal, PascalABC.NET 3 21.03.2008 18:08
Динамический массив Mickle Общие вопросы Delphi 8 19.06.2007 06:45