Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / std::vector && msvc8 / 3 сообщений из 3, страница 1 из 1
30.10.2007, 16:18:45
    #34905176
Akh
Akh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
std::vector && msvc8
Значит, всем известно, что вектор можно построить из последовательности между двумя переданными ему итераторами. Допустим у меня есть:
Код: plaintext
1.
char s[NNN];
Хочу его положить в вектор. Есстественно, надо преобразовывать в итераторы. gcc есть великолепно по типу:
Код: plaintext
1.
2.
3.
typedef vector<char> Vector
ttpedef Vector::const_iterator cIt;
Vector v(cIt(s), cIt(s+NNN));

На что msvc8 говорит, что пол либо у него конструктора нет, либо не знает какой выбрать. Смотрю его stl:
Код: plaintext
1.
2.
	_Vector_const_iterator();
	_Vector_const_iterator(_Tptr _Ptr, const _Container_base *_Pvector);

Например, его использование в vector<>::begin():
Код: plaintext
1.
2.
3.
4.
	const_iterator begin() const
		{	// return iterator for beginning of nonmutable sequence
		return (const_iterator(_Myfirst, this));
		}

Т.о. получается, что итератор stl в msvc8 нельзя создать без контейненра! Следовательно, нельзя запихнуть буфер в контейнер, не засовывая его побайтно! Это новая мода memcpy в ручную?
...
Рейтинг: 0 / 0
30.10.2007, 16:24:56
    #34905194
blinded
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
std::vector && msvc8
Хакер хренов. Ну что теб мешает написать по человечески
через std::copy?
...
Рейтинг: 0 / 0
30.10.2007, 16:27:42
    #34905205
Akh
Akh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
std::vector && msvc8
blindedХакер хренов. Ну что теб мешает написать по человечески
через std::copy?

Пасиб за наводку. :)
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / std::vector && msvc8 / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]