Форум программистов, компьютерный форум CyberForum.ru

Компилятор не видит vector - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 27, средняя оценка - 4.67
4e87
4 / 4 / 1
Регистрация: 20.08.2011
Сообщений: 51
24.08.2011, 15:14     Компилятор не видит vector #1
C++
1
2
3
#include <vector>
using std::vector;
vector<double> v;
выбивает ошибку вектор не стд, вектор не определён.
подскажите плз почему так может быть

 Комментарий модератора 
Во-первых, по правилам форума один вопрос - одна тема. Во-вторых, ваш вопрос к той теме вообще отношения не имеет.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Dani
1263 / 621 / 50
Регистрация: 11.08.2011
Сообщений: 2,236
Записей в блоге: 2
Завершенные тесты: 1
24.08.2011, 15:18     Компилятор не видит vector #2
Цитата Сообщение от 4e87 Посмотреть сообщение
чтобы не начинать новую тему:
#include <vector>
using std::vector;
vector<double> v;
выбивает ошибку вектор не стд, вектор не определён.
подскажите плз почему так может быт
Какой у Вас компилятор? Т.к. на моем все проходит.
4e87
4 / 4 / 1
Регистрация: 20.08.2011
Сообщений: 51
24.08.2011, 15:23  [ТС]     Компилятор не видит vector #3
вижуал студио 2010
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4237 / 2770 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
24.08.2011, 15:24     Компилятор не видит vector #4
4e87, покажи полный код и точную цитату ошибки.
4e87
4 / 4 / 1
Регистрация: 20.08.2011
Сообщений: 51
24.08.2011, 15:27  [ТС]     Компилятор не видит vector #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include "stdafx.h"
#include "stdafx.h"
using std::vector;
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    
 
    vector<double> v;
    double num=0;
    while (num>=0)
    {
        cout << "Enter your number: " << endl;
        cin >> num;
        v.push_back(num);
    }
    return 0;
}
C++
1
2
3
4
5
6
7
8
9
10
#pragma once
 
#include "targetver.h"
 
#include <cstdio>
#include <tchar.h>
#include <iostream>
#include <string>
#include <cctype>
#include <vector>
в заголовочном столько подключений т.к. в одном проекте тестирую.
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4237 / 2770 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
24.08.2011, 15:32     Компилятор не видит vector #6
А ошибка где?
Есть ощущение, что ругается все таки на cin и cout, т.к. для них не указанно пространство имен.
4e87
4 / 4 / 1
Регистрация: 20.08.2011
Сообщений: 51
24.08.2011, 15:35  [ТС]     Компилятор не видит vector #7
про ошибку чёт забыл)
C++
1
2
3
4
5
6
7
8
c:\users\user\documents\visual studio 2010\projects\test\test\test.cpp(6): error C2039: vector: не является членом "std"
1>c:\users\user\documents\visual studio 2010\projects\test\test\test.cpp(6): error C2873: vector: использование символа в "using"-объявлении не допускается
1>c:\users\user\documents\visual studio 2010\projects\test\test\test.cpp(49): error C2065: vector: необъявленный идентификатор
1>c:\users\user\documents\visual studio 2010\projects\test\test\test.cpp(49): error C2062: тип "double" не требуется
1>c:\users\user\documents\visual studio 2010\projects\test\test\test.cpp(53): error C2065: endl: необъявленный идентификатор
1>c:\users\user\documents\visual studio 2010\projects\test\test\test.cpp(55): error C2065: v: необъявленный идентификатор
1>c:\users\user\documents\visual studio 2010\projects\test\test\test.cpp(55): error C2228: выражение слева от ".push_back" должно представлять класс, структуру или объединение
1>          тип: 'unknown-type'
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4237 / 2770 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
24.08.2011, 15:41     Компилятор не видит vector #8
Как будто #include <vector> не видит. Попрубуй написать это в main.cpp, после #include "stdafx.h" и перед using std::vector;
4e87
4 / 4 / 1
Регистрация: 20.08.2011
Сообщений: 51
24.08.2011, 15:43  [ТС]     Компилятор не видит vector #9
вы правы, не видел в заголовочном файле вектор
вот только почему...?
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4237 / 2770 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
24.08.2011, 15:50     Компилятор не видит vector #10
Хз, я вообще "stdafx.h" не пользуюсь. Может попробовать пересобрать проект?
4e87
4 / 4 / 1
Регистрация: 20.08.2011
Сообщений: 51
24.08.2011, 15:56  [ТС]     Компилятор не видит vector #11
с перестройкой всё работает...видимо в 2 часа ночи голова не варила, что не додумался до таких простых мер.
а заголовочный файл както привычно уже))
Сыроежка
Заблокирован
24.08.2011, 21:27     Компилятор не видит vector #12
Цитата Сообщение от 4e87 Посмотреть сообщение
C++
1
2
3
#include <vector>
using std::vector;
vector<double> v;
выбивает ошибку вектор не стд, вектор не определён.
подскажите плз почему так может быть

Во-первых, по правилам форума один вопрос - одна тема. Во-вторых, ваш вопрос к той теме вообще отношения не имеет.
Нет такого имени, как vector в пространстве имен std::. Есть шаблонный класс std::vector<T>. Поэтому вы в своей программе должны написать

C++
1
using std::vector<double>;
grizlik78
Эксперт С++
 Аватар для grizlik78
1884 / 1416 / 102
Регистрация: 29.05.2011
Сообщений: 2,961
24.08.2011, 21:31     Компилятор не видит vector #13
Цитата Сообщение от Сыроежка Посмотреть сообщение
Нет такого имени, как vector в пространстве имен std::. Есть шаблонный класс std::vector<T>. Поэтому вы в своей программе должны написать

C++
1
using std::vector<double>;
a template-id may not appear in a using-declaration

Не по теме:

Фэйл за фэйлом. Сыроежка не выспался

Сыроежка
Заблокирован
24.08.2011, 21:36     Компилятор не видит vector #14
Цитата Сообщение от grizlik78 Посмотреть сообщение
a template-id may not appear in a using-declaration

Не по теме:

Фэйл за фэйлом. Сыроежка не выспался

А это разве template id? Это аргумент шаблона.
grizlik78
Эксперт С++
 Аватар для grizlik78
1884 / 1416 / 102
Регистрация: 29.05.2011
Сообщений: 2,961
24.08.2011, 21:38     Компилятор не видит vector #15
Цитата Сообщение от Сыроежка Посмотреть сообщение
А это разве template id? Это аргумент шаблона.
Нет, это template-id. Но со мной в данном случае можно не спорить, так как я просто процитировал ошибку, которую вывел GCC. Без <double> он не ругается, как и должно быть.
Сыроежка
Заблокирован
24.08.2011, 21:40     Компилятор не видит vector #16
Цитата Сообщение от grizlik78 Посмотреть сообщение
Нет, это template-id. Но со мной в данном случае можно не спорить, так как я просто процитировал ошибку, которую вывел GCC. Без <double> он не ругается, как и должно быть.

Я понял, что вы процитировали ошибку компилятора, но мне не понравился текст его сообщения. Под template id я представляю себе что-то вроде

C++
1
std::vrctor<T>
grizlik78
Эксперт С++
 Аватар для grizlik78
1884 / 1416 / 102
Регистрация: 29.05.2011
Сообщений: 2,961
24.08.2011, 21:45     Компилятор не видит vector #17
И чем std::vector<T> отличается от std::vector<double> ?
Сыроежка
Заблокирован
24.08.2011, 21:46     Компилятор не видит vector #18
Цитата Сообщение от grizlik78 Посмотреть сообщение
И чем std::vector<T> отличается от std::vector<double> ?
double - это конкретный определенный тип, а такого типа, как T нет.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.08.2011, 21:48     Компилятор не видит vector
Еще ссылки по теме:

Компилятор не видит #include <vcl.h> C++
C++ Компилятор не видит объявление идентификатора
#include, компилятор не видит header-файл C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
grizlik78
Эксперт С++
 Аватар для grizlik78
1884 / 1416 / 102
Регистрация: 29.05.2011
Сообщений: 2,961
24.08.2011, 21:48     Компилятор не видит vector #19
На момент инстанцирования T вполне определённый тип. Впрочем, это не важно. Остаётся только отправить Вас читать стандарт
Пункт 14.2
Yandex
Объявления
24.08.2011, 21:48     Компилятор не видит vector
Ответ Создать тему
Опции темы

Текущее время: 11:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru