Страница: 1 | 2 | 3 |
Вопрос: Олимпиада (C++, Delphi)
Добавлено: 04.10.05 14:37
Автор вопроса: HACKER
Ответы
Всего ответов: 41
Номер ответа: 31
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #31
Добавлено: 10.10.05 06:12
STL, вроде, можно, он с 95-го года часть языка.
Номер ответа: 32
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #32
Добавлено: 10.10.05 19:45
ну ок, а если не для олимпиады, для себя на будущие хотел бы знать. Если можно небольшой примерчик с определением размера динамич. массива.
Номер ответа: 33
Автор ответа:
vito
Разработчик Offline Client
Вопросов: 23
Ответов: 879
Web-сайт:
Профиль | | #33
Добавлено: 10.10.05 23:12
Вот простой пример работы с классом Vector.Если будут вопросы - всегда рад.
#include <vector>
using namespace std;// использовать пространство имен STL
void ShowVector(vector<int> &theVector);
int _tmain(int argc, _TCHAR* argv[]
{
int n;
cout<<"Enter the array size: ";
cin>>n;
vector <int> x(n);// объявляем вектор (массив) типа int
for(int i=0;i<n;++i)
{
x[i]=i;
cout<<x[i];//чтобы уж сразу не грузить можно и проще
}
cout<<"\nLenght the vector: "<<x.size ()<<endl;
ShowVector(x);// выводим на дисплей
x.erase (x.begin() +(n-1));//стираем последний елемент
ShowVector(x);// выводим на дисплей
x.insert (x.begin() +(n-1),100);//добавляем елемент
ShowVector(x);// выводит на дисплей
x.resize (n+5);//изменяем размерность вектора
ShowVector(x);// выводим на дисплей
return 0;
}
//я думаю достаточно
void ShowVector(vector<int> &theVector)
{
// проверка на наличие элеметов
if (theVector.empty())
{
cout << "theVector is empty." << endl;
return;
}
// итератор.
vector<int>::iterator theIterator;
cout << "\n\ntheVector [ " ;
for (theIterator = theVector.begin(); theIterator != theVector.end();
theIterator++)//с начала до конца
{
//cout<<theVector[*theIterator];//можно и так
cout << *theIterator;
if (theIterator != theVector.end()-1) cout << ", ";
// форматирование вывода
}
cout << " ]" << endl ;
cout<<"\nLenght the vector: "<<theVector.size ();
}
Номер ответа: 34
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #34
Добавлено: 11.10.05 01:54
пасибо vito!
Номер ответа: 35
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #35
Добавлено: 11.10.05 01:57
упс,
??? чё хочет оно
Номер ответа: 36
Автор ответа:
vito
Разработчик Offline Client
Вопросов: 23
Ответов: 879
Web-сайт:
Профиль | | #36
Добавлено: 11.10.05 02:25
int _tmain(int argc, _TCHAR* argv[])
Она не поняла _TCHAR. Сотри, оставь ее пустой.
int main()// Вот так.
Ты в какой среде работаешь?
Я в VS2003.
Номер ответа: 37
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #37
Добавлено: 11.10.05 04:20
Это, вроде, еще #define UNICODE нужен
Номер ответа: 38
Автор ответа:
vito
Разработчик Offline Client
Вопросов: 23
Ответов: 879
Web-сайт:
Профиль | | #38
Добавлено: 11.10.05 11:31
Sharp
Гммм... а зачем?
Номер ответа: 39
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #39
Добавлено: 11.10.05 20:52
Потому что без него внутри программы используются однобайтовые символы и прототип main выглядит как int main(int argc, char* argv[]);
Номер ответа: 40
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #40
Добавлено: 11.10.05 21:10
в VC++ 6
всё, ок, так работает
Номер ответа: 41
Автор ответа:
vito
Разработчик Offline Client
Вопросов: 23
Ответов: 879
Web-сайт:
Профиль | | #41
Добавлено: 11.10.05 21:56
Sharp
По умолчанию UNICODE не определен. Так нам это и не нужно в данном случае, спокойно обходимся ANSI.
Ошибка была вызвана тем, что я забыл указать заголовочный файл <tchar.h>.
HACKER
Ты давай не сдавайся, продолжай. На тебя смотрит весь сайт