Модераторы: Partizan, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> "Ламерские" вопросы, задаем здесь элементарные вопросы 
:(
    Опции темы
gambit
Дата 20.1.2010, 12:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: 3
Всего: 40



Троелсен и Рихтер лучшие книги, но мне кажется их надо читать имея какую то начальную подготовку. Я читал Рихтера вообще не понял, потом купил самоучитель какой то, и после его прочтения уже читая Рихтера я начал понимать его смысл.

Цитата(de_Nis @  20.1.2010,  09:52 Найти цитируемый пост)
44 страницы

у меня всего 17

Цитата(de_Nis @  20.1.2010,  09:52 Найти цитируемый пост)
"Одна тема - один вопрос" - очень верное.

Это конечно так, но здесь собираются вопросы уровня "без обсуждения", маленький вопрос - маленький ответ. А заваливать форум топиками "маленький вопрос - маленький ответ" не стоит. Конечно если вы хотите создать вопрос который стоит обсудить и подумать, то пож. создавайте отдельный топик.

Цитата(Schumi @  20.1.2010,  11:58 Найти цитируемый пост)
gambit, в том то и дело, что там можно менять далеко не все свойства 

сейчас попробовал, не настраивается только свойство "внутреннее имя", но мне кажется что это имя с которой компилируется файл, так что тоже можно настроить, все остальное настраивается.

Это сообщение отредактировал(а) gambit - 20.1.2010, 12:14
PM MAIL ICQ Skype   Вверх
Jijer
Дата 20.1.2010, 14:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 20.1.2010

Репутация: нет
Всего: нет



Добрый всем день! К сожалению, не могу понять как использовать регулярное выражение в C#. Мне требуется найти в строке все hex-числа, т.е. ответом должно быть:
при вводимой строке:   
e4 25 j6445 12 4b1 5=33   21 ? | к примеру
вывести: 
e4 
25
12 
4b1 
21
Понятно, что используется Regex.IsMatch(word, "^[0-9][a-f][A-F]$") или примерно так, но сложность во всем остальном smile - минималистичный оконный интерфейс и остальная начинка кода

Если проще будет - имеется код для поиска двоичных чисел, который необходимо переделать в поиск целых шестнадцатиричных чисел. 

Заранее благодарю!

ps, да , шестнадцатеричное число без преффикса 0x

Это сообщение отредактировал(а) Jijer - 20.1.2010, 14:21
PM MAIL   Вверх
Enter
Дата 2.2.2010, 18:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 13.2.2007

Репутация: нет
Всего: 2



берешь строку, делишь на слова, и выводишь все где нет буковок выше F, а также нет спецзнаков
то есть abcdef983ad это тоже hex число

зы. ламерский вопрос
как вернуть из функции кучку значений?
ссылки чото не работают.
упаковать в object и возвращать его, юзать делегаты, или можно проще?
PM MAIL   Вверх
gambit
Дата 2.2.2010, 20:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: 3
Всего: 40



Цитата(Enter @  2.2.2010,  18:05 Найти цитируемый пост)
как вернуть из функции кучку значений?

как таковой нельзя, но можно написать класс и возвращать его, либо делать функцию с побочным результатом

Код

int megaFunc(out q)
{
q=2;
return 1;
}


Таким образом мы получили из функции 2 значения
PM MAIL ICQ Skype   Вверх
Ceiceron
Дата 3.2.2010, 08:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 2.8.2007
Где: Дубна

Репутация: нет
Всего: нет



Enter
gambit
Коллекции ни кто еще не отменял.
Код

ICollection<int> Func()
{
    List<int> coll=new List();
    int num=5;
    coll.Add(num);
    coll.Add(4);
   //....
   return coll;
}

если при вычислении зараенее можем узнать размер массива данных, который вернуть хотим то
Код

ICollection<int> Func()
{
    int[] coll=new int[5]; //0,1,2,3,4
    int num=5;
    coll[0]=num;
    coll[1]=4;
   //....
   return coll;
}

последний вариант предпочтительнее, как более оптимальный.
PM MAIL   Вверх
Enter
Дата 3.2.2010, 10:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 13.2.2007

Репутация: нет
Всего: 2



Цитата
Коллекции ни кто еще не отменял.

про коллекции я в курсе.
меня интересовало как вернуть несколько значений разных типов.

заинтересовало слово out
out int i 
это то же самое что и 
&int i

изначально думал сделать как-то так
Код
public Object obj()
{
    int i;
    String k;
    Object obj;
    obj.add(i);
    obj.add(k);
    return obj;
}


PM MAIL   Вверх
gambit
Дата 3.2.2010, 10:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: 3
Всего: 40



Цитата(Enter @  3.2.2010,  10:08 Найти цитируемый пост)
изначально думал сделать как-то так

как ты его потом будешь распаковывать??? Мне это кажется затруднительным. В таком случае, лучше создай класс и возвращай его объект.
PM MAIL ICQ Skype   Вверх
Ceiceron
Дата 3.2.2010, 11:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 2.8.2007
Где: Дубна

Репутация: нет
Всего: нет



Код

    obj.add(i);
    obj.add(k);

Это как?
Не советую вам упаковывать таким образом параметры.
Если нужно вернуть разнотипные значения, создайте для этих целей нормальный объект (можно структуру и возвращайте его).
Операция приведения типов опасна и порождает много глупых ошибок.
Код

&int i

что-то это вызвало у меня странное ощущение. вы переходить на .НЕТ с С?
Код

out int i 

это параметр, в который будет может быть помещен какой-то результат в ходе работы функции, он не требует предварительной инициализации, в отличии от ref. Оба варианта передают переменную в функцию по ссылке.

так что лучше сделать так
Код


public structure SomeRes
{
    int i;
    String k;
}
public SomeRes obj()
{
    SomeRes res=new SomeRes();
    res.i=1;
    res.k="bla-bla";
    return res;
}

PM MAIL   Вверх
gambit
Дата 3.2.2010, 11:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: 3
Всего: 40



Цитата(Ceiceron @  3.2.2010,  11:28 Найти цитируемый пост)
так что лучше сделать так

конкретно в данном случае можно, но вообще использовать структуры не советую, лучше классы.
PM MAIL ICQ Skype   Вверх
nmc
Дата 5.2.2010, 17:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 124
Регистрация: 7.4.2009

Репутация: нет
Всего: -1



Привет!

Как можно из листа вписать данные в richTextBox1

Есть лист
Код

List<string> list = new List<string>();


заполнили лист данными из richTextBox1 
Код

list.Add(richTextBox1.Text);


Потом в другом метода 
после удаления текста из richTextBox1 нужно восстановить(переписать то же самое заново)
Код

richTextBox1.Text += list.ToString();//так неполучается

// использование foreach приводит к  ошибке
 foreach(List<string>ls in list)
                {

                }


Это сообщение отредактировал(а) nmc - 5.2.2010, 17:02
PM   Вверх
gambit
Дата 5.2.2010, 21:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: 3
Всего: 40



Для чего вы используете коллекцию, если весь текст загоняете в один объект? Далее, зачем вы в цикле заменили слово vаr, оно там именно для того что бы избежать глупых ошибок, либо верните его, либо замените на стринг. А так получилось что вы ищете коллекцию в коллекции. Прошу прощения, если где ошибки, пишу с телефона)
PM MAIL ICQ Skype   Вверх
Ceiceron
Дата 5.2.2010, 23:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 2.8.2007
Где: Дубна

Репутация: нет
Всего: нет



nmc
Могу предположить, что имелось ввиду такое использование richTextBox1
Код

List<string> lst=new List<string>();
lst.AddRange(richTextBox1.Lines);
//...
//гдето- потом
richTextBox1.Lines=lst.ToArray();

только какой в этом смысл?

а на счет  varvar - это зло ;) фейк вывода типа. Лучше писать конкретный тип в конструкциях вида  foreach, структурирует мышление и после облегчает отладку и как-раз защищает от глупых ошибок, а не наоборот.
PM MAIL   Вверх
gambit
Дата 6.2.2010, 21:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: 3
Всего: 40



То что vаr не зло, мы убедились на примере nmс, если бы он его оставил, то не было бы проблемы. Разработчики студии не идиоты. Ситуации, когда из за этого слова может получится проблема, лично я не представляю. Единственное, там есть маленький баг, при использовании регулярных выражений, но это именно баг студии и к вопросам удобства и проблемам при написании не относится.
PM MAIL ICQ Skype   Вверх
Ceiceron
Дата 6.2.2010, 23:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 2.8.2007
Где: Дубна

Репутация: нет
Всего: нет



gambit,  разрешите я внесу поправку. Студия - это просто навороченный блокнот. Если говорить о конкретно языке C#, то он является инструментом для работы с технологией  .NET.

Из чисто учебно освоительных целей я бы не рекомендовал использовать var не понимая как работать с типами данных в  .NET. Если на то пошло, то начинать надо с VB .NET, а не с C#. Сам по себе  var безвреден только при объявлении переменных, но работать с ним стоит аккуратно (довод 1довод 2). var нужен при работе с LINQ.
PM MAIL   Вверх
wester
Дата 7.2.2010, 21:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 675
Регистрация: 27.2.2009

Репутация: 3
Всего: 13



Цитата

Если на то пошло, то начинать надо с VB .NET, а не с C#.

дико интересно ,почему же начинать надо именно с VB.net а не c C# 
одна и та же платформа , один и тот же Framework . разве что мышление программиста немного деградируется в Basic-подобных языках


ссылки тоже как то не прояснили ситуации с var :в обоих один тезис - все зависит от градуса кривины рук 
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0991 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.