Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Стандартная библиотека  (Прочитано 16288 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Алик
Постоялец

kz
Offline Offline

« : 25-05-2004 11:39 » 

Пытаюсь ковыряться в стандартной библиотеке. Начитался Страуструпа...  Работаю в MS Visual C++

6.0. Так вот, собственно, проблема:

#include <vector>
...
vector<char> v;

Он говорит: 'vector' : undeclared identifier.
Подозреваю, что это из-за того, что где-то почему-то не объявлен какой-то макрос. Но какой? Кто с такой проблемой сталкивался?
Записан
npak
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #1 : 25-05-2004 11:55 » 

Алик, все стандартные типы объявлены в namespace std

Надо либо в начале файла сказать
using namespace std;

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

std::vector<char> v;
Записан

UniTesK -- индустриальная технология надежного тестирования.

http://www.unitesk.com/ru/
Алик
Постоялец

kz
Offline Offline

« Ответ #2 : 26-05-2004 02:49 » 

Вот я лапоть!
 :oops:
Спасибо!
Записан
--Zap--
Гость
« Ответ #3 : 01-06-2004 09:48 » 

Цитата: npak
Алик, все стандартные типы объявлены в namespace std

Надо либо в начале файла сказать
using namespace std;

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

std::vector<char> v;

Извините за ламерство но у меня "using namespace std;"- не работает, хотя стоит Visual C++ 6.0 может я чета не доставил или старая поставка(я читал что в старых версиях C++ её нету =(  )Не понял?
Записан
Anonymous
Гость
« Ответ #4 : 01-06-2004 17:47 » 

что значит не работает?
что говорит компилятор?
и полный текст проги неплохо бы посмотреть. в VC6 всё дожно быть ОК.
Записан
NetRaider
Гость
« Ответ #5 : 02-06-2004 00:44 » 

Цитата
Извините за ламерство но у меня "using namespace std;"- не работает, хотя стоит Visual C++ 6.0 может я чета не доставил или старая поставка(я читал что в старых версиях C++ её нету =(  )Не понял?



'using namespace std;' нужно после '#include "stdafx.h', если ты его используешь
Записан
--Zap--
Гость
« Ответ #6 : 02-06-2004 16:05 » 

2NetRider вот как я написал с твоим инклудером

Код:
#include "stdafx.h"

using namespace std;

int main(){
return 0;
};

А вот что мой добрый компилятор ответил

Цитата
d:\documents and settings\agera\My documents\asdf\asdf.cpp(1) : fatal error C1083: Cannot open include file: 'stdafx.h': No such file or directory

Опять ошибка   Так больше нельзя...

2 Гость

Исходный код вот:

Код:
using namespace std;

int main(){
return 0;
};
Найдешь в моей проге ошибку  Ага

А вот что компилятор говорит:

Цитата
d:\documents and settings\agera\My documents\asdf\asdf.cpp(1) : error C2871: 'std' : does not exist or is not a namespace

Сори больше ни чего сказать не могу......................
« Последнее редактирование: 25-11-2007 21:58 от Алексей1153++ » Записан
npak
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #7 : 02-06-2004 21:35 » 

--Zap--, а где у тебя "stdafx.h" находится?  Этот каталог добавлен в пути препроцессора?
Код:
using namespace std;

int main(){
   return 0;
};
   
Ошибка -- перед тем, как использовать пространство имён, его надо создать.  Что и делается в стандартных заголовках STL

надо добавить в начало строчку
Код:
namespace std {}
« Последнее редактирование: 25-11-2007 21:58 от Алексей1153++ » Записан

UniTesK -- индустриальная технология надежного тестирования.

http://www.unitesk.com/ru/
Mfcer__
Команда клуба

ru
Offline Offline

« Ответ #8 : 02-06-2004 22:22 » 

должно работать сто процентно:
File->New Project-> Win32 Console Application
Добавляешь где функция main():
using namespace std;
И ВСЕ должно работать

А дальше разбирай код которые APPWIZARD'ом был создан.
Записан
--Zap--
Гость
« Ответ #9 : 03-06-2004 10:50 » 

npak Спасибо тебе большое после добавления строчки
"namespace std{}"  все работает!!! Улыбаюсь. Покачто не совсем понял правильно ли это но всеравно СПАСИБО!!!
Записан
Mayor
Специалист

ru
Offline Offline

« Ответ #10 : 07-06-2004 02:36 » 

Цитата

Цитата:

d:\documents and settings\agera\My documents\asdf\asdf.cpp(1) : fatal error C1083: Cannot open include file: 'stdafx.h': No such file or directory
 

 
По поводу #include , если имя файла написано внутри  <>, то он ищется через %path%, если внутри "" то только в каталоге проекта, поэтому если инклудите m$ файлы, то писать их надо внутри <>
Записан

1n c0de we trust
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #11 : 14-04-2006 17:36 » 

(коммент:)

FAQ
Записан

Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines