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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как подсоеденить System.Collections.Generic, VS2003.Net 
:(
    Опции темы
Yozhik
Дата 25.4.2007, 21:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Как подсоеденить библиотеку System.Collections.Generic?


Вроде работающий код, но нет этой библиотеки. 

В коде есть EvalStack.Pop(),       EvalStack. 


Думаю именно из этой библиотеке. 








PM MAIL   Вверх
Void
Дата 25.4.2007, 21:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

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



Никак.

Заменить на эквивалентны из System.Collections и попрощаться со строгой типизацией.


--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
Yozhik
Дата 25.4.2007, 21:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Пробовал конечно...

using System.Collections;
using System.Collections.Specialized;


Всё равно выдаёт ошибки в коде:

Код

public double EvalRPNString(string input) 
        {
            string[] tokens = input.Split(' ');
            Stack<double> EvalStack = new Stack<double>();
            double tmpNum = 0;
            for (int i = 0; i < tokens.Length; i++) 
            {
                if (double.TryParse(tokens[i], out tmpNum)) 
                {
                    EvalStack.Push(tmpNum);
                } 
                else 
                {
                    try 
                    {    
                        tmpNum = EvalStack.Pop();
                    
                        switch (tokens[i]) 
                        {
                            case "+": 
                            {
                                EvalStack.Push(EvalStack.Pop() + tmpNum);
                                break;
                            }
                            case "-": 
                            {
                                EvalStack.Push(EvalStack.Pop() - tmpNum);
                                break;
                            }
                            case "*": 
                            {
                                EvalStack.Push(EvalStack.Pop() * tmpNum);
                                break;
                            }
                            case "/": 
                            {
                                EvalStack.Push(EvalStack.Pop() / tmpNum);
                                break;
                            }
                            case "^": 
                            {
                                EvalStack.Push(Math.Pow(EvalStack.Pop(), tmpNum));
                                break;
                            }
                            case "sqrt": 
                            {
                                EvalStack.Push(Math.Sqrt(tmpNum));
                                break;
                            }
                            case "sin": 
                            {
                                EvalStack.Push(Math.Sin(tmpNum));
                                break;
                            }
                            case "cos": 
                            {
                                EvalStack.Push(Math.Cos(tmpNum));
                                break;
                            }
                            case "tan": 
                            {
                                EvalStack.Push(Math.Tan(tmpNum));
                                break;
                            }
                            case "exp": 
                            {
                                EvalStack.Push(Math.Exp(tmpNum));
                                break;
                            }
                            case "log": 
                            {
                                EvalStack.Push(Math.Log(EvalStack.Pop(), tmpNum));
                                break;
                            }
                        }
                    } 
                    catch (InvalidOperationException ioe) 
                    {
                        Console.WriteLine("Fehler an Stelle {0}.", i + 1);
                        break;
                    }
                }
            }
            if (EvalStack.Count > 1) 
            {
                Console.WriteLine("Stack nicht leer - fehlerhafter Inputstring");
                return EvalStack.Pop();
            } 
            else 
            {
                try 
                {
                    return EvalStack.Pop();
                } 
                catch (InvalidOperationException ioe) 
                {
                    Console.WriteLine("Kein Ergebniss da ungultiger Inputstring");
                    return double.NaN;
                }
            }
        }

    }
}






Выделяет все EvalStack...

В чём может  быть ошибка?


Это сообщение отредактировал(а) Yozhik - 25.4.2007, 22:53
PM MAIL   Вверх
Exception
Дата 25.4.2007, 22:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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




M
Exception
Пожалуйста, отредактируйте ваше сообщение, оформив код в теги [ code=csharp ] [/ code ] (без пробелов)!


Добавлено через 29 секунд
А текст ошибок предлагается угадать?

Добавлено через 1 минуту и 22 секунды
Цитата(Yozhik @  25.4.2007,  22:49 Найти цитируемый пост)
Stack<double> EvalStack = new Stack<double>();


Нету дженериков в .NET 1.x.

Цитата(Void @  25.4.2007,  22:41 Найти цитируемый пост)
Заменить на эквивалентны из System.Collections и попрощаться со строгой типизацией.


PM   Вверх
Yozhik
Дата 25.4.2007, 23:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Что сделать для того чтоб заработало?
PM MAIL   Вверх
Exception
Дата 25.4.2007, 23:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Заменить Stack<double> на Stack.
PM   Вверх
Rapalex
Дата 26.4.2007, 10:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 732
Регистрация: 20.1.2006
Где: Украина -> Ник олаев

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



Попробуй постависть SDK под .нет 2.0, должно заработать, или непарься и ставвь студию 2005.


--------------------
In vitium ducit culpae fuga.
Желание избежать ошибки вовлекает в другую.
(Horatius)
PM ICQ   Вверх
Naum
Дата 26.4.2007, 13:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 743
Регистрация: 7.9.2005
Где: Саратов, ул. Поса дского, 298

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



Цитата(Rapalex @  26.4.2007,  11:21 Найти цитируемый пост)
Попробуй постависть SDK под .нет 2.0, должно заработать

С чего бы это? Компилятор-то в 2003 студии останется C# 1.0. А он ничего не знает ни о втором фрэймворке, ни о дженериках.



--------------------
У нас всего два праздника Новый год и ТЯПница.
PM MAIL ICQ   Вверх
Rapalex
Дата 26.4.2007, 14:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 732
Регистрация: 20.1.2006
Где: Украина -> Ник олаев

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



А мне казалось что сдк в себя включает компилятор, может я ошибаюсь, но без сдк 2.0 тебе никакой компилятор не поможет.


--------------------
In vitium ducit culpae fuga.
Желание избежать ошибки вовлекает в другую.
(Horatius)
PM ICQ   Вверх
archeg
Дата 26.4.2007, 18:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(Rapalex @ 26.4.2007,  14:15)
А мне казалось что сдк в себя включает компилятор, может я ошибаюсь, но без сдк 2.0 тебе никакой компилятор не поможет.

Да, но студия 2003 все равно будет использовать 1.0


--------------------
ИМХО задница есть универсальный интерфейс. Ибо через задницу можно сделать абсолютно ВСЕ (bash.org.ru)

Дядька всегда можно спросить в аське, если не задалбывать - не откажет smile
И вообще, на самом деле я студент, и ненавижу обращение на "Вы") Тут все свои  ;)
PM MAIL ICQ Jabber   Вверх
Exception
Дата 26.4.2007, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Поставь себе хоть версий компилятора, студия 2003 всё равно будет использовать компилятор C# 1.1 smile .
Поэтому в ней код для 2.0 скомпилировать не получится всё равно.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

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


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

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


 




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


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

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