Какую библиотеку включить для std :: vector в Tizen?

Я хочу использовать std :: vector для приложения, которое создаю с помощью Tizen, и я не могу найти нужную библиотеку для включения, чтобы мой std :: vector был распознан ... У меня синтаксическая ошибка ... Есть ли эквивалент std :: vector, специфичный для Tizen? Я искал в Интернете, но ничего не нашел ...

Я пробовал #include <vector> Tizen не распознает это, вот в чем моя проблема, потому что в "нормальном" C ++ он работает нормально. Только я использую Tizen с Tizen IDE (плагин Eclipse), и он не распознает библиотеку, поэтому мне интересно, какую библиотеку мне нужно включить вместо этого (у меня фатальная ошибка: файл не найден, когда я использую include Я упомянул).

Я не могу публиковать изображения, поэтому вот расшифровка сообщения об ошибке:

имя типа требует спецификатора или квалификатора
синтаксическая ошибка
ожидаемое выражение "

Все, что касается этой строки:

std::vector<int> vect;

Хорошо, я нашел свой ответ. Похоже, что Tizen использует C, а не C ++ ... Я этого не видел, потому что некоторые библиотеки, которые я иногда использую, когда пишу код на C ++, были включены как должны. В любом случае, мне просто нужно найти C-эквивалент вектора, и моя проблема будет решена.


person Yaoming    schedule 02.04.2015    source источник
comment
попробуйте #include <vector>   -  person Kasim Rangwala    schedule 02.04.2015
comment
Когда вы задаете вопрос такого типа, покажите, что вы пытались включить, и полученное сообщение об ошибке. В противном случае вы просите людей угадать, в чем проблема. Ссылка «Справка» в верхней части экрана дает вам гораздо больше полезной информации о том, как задавать хорошие вопросы о переполнении стека.   -  person Dale Wilson    schedule 02.04.2015
comment
Пожалуйста, включите сообщение об ошибке. "I have a syntax error" недостаточно конкретен для целей отладки.   -  person Kimbluey    schedule 02.04.2015
comment
Что ж, это части сообщений об ошибках. Каков контекст строки кода? Прочтите эту страницу: Как создать минимальный, полный и проверяемый пример   -  person Mooing Duck    schedule 02.04.2015


Ответы (3)


https://developer.tizen.org/dev-guide/2.2.0/ < / а>

Приложение Tizen C ++ поддерживает C ++ на основе стандарта C ++ ANSI ISO 14882 2003, который включает стандартную библиотеку шаблонов (STL). Это помогает разработчикам с минимальными усилиями переносить существующие приложения на основе стандартных библиотек на платформу Tizen.

В частности, Tizen поддерживает полный набор libstdc ++ v3, состоящий из стандартных функций C ++, указанных в стандарте C ++ ANSI ISO 14882 2003, и всей стандартной библиотеки шаблонов (http://www.sgi.com/tech/stl/).

Эти методы можно использовать, включив соответствующий файл заголовка стандартным образом, например, «#include <stdio>». Поддержка стандартной библиотеки C ++ расширена до полного набора модулей, пространств имен и классов libstdc ++ v3. Для получения дополнительной информации посетите этот веб-сайт.

Примечания: Функция на основе локали не поддерживается в Tizen.

Так что #include <vector> должно работать нормально.

Поскольку вы говорите, что не можете включать какие-либо заголовки C ++, я подозреваю, что проблема в том, что компилятор компилирует ваш код как C вместо C ++. Подтвердите, что ваш файл имеет расширение .cpp, и просмотрите свойства файла в проекте, чтобы убедиться, что среда IDE обрабатывает файл как C ++. (Я не знаю, где эта настройка, у меня нет Eclipse). Эта ссылка требует удалить ваш проект и создать проект C ++ вместо проект C, а затем повторно импортируйте ваши файлы. В этой ссылке говорится, что вы можете установить "Тип файла", но также подразумевает, что это не совсем работает.

person Mooing Duck    schedule 02.04.2015
comment
Ну #include <stdio.h> #include <stdlib.h>, но это же библиотеки C, верно? - person Yaoming; 02.04.2015
comment
@ Яоминг: Верно. Вы пробовали #include <cstdio> и #include <cstdlib>, версии C ++? - person Mooing Duck; 02.04.2015
comment
Неустранимая ошибка: файл снова не найден ... Может нужно что-то скачать? Скажите Eclipse, где искать эти файлы? - person Yaoming; 02.04.2015
comment
Какое полное имя файла, который вы компилируете? Кроме того, есть ли в IDE представление, в котором вы можете просмотреть файлы в проекте, щелкнуть этот файл правой кнопкой мыши и просмотреть его свойства? У меня есть подозрение, что компилятор думает, что у вас есть файл C, а не C ++. - person Mooing Duck; 02.04.2015
comment
На самом деле имя моего файла: cecinestpasuntest.c (да, я француз ^^). Так что да, .c, а не .cpp, я не обращал на это внимания ... - person Yaoming; 02.04.2015
comment
Ну нет, это не работает, но я добавил файл C ++ в свой проект, и теперь я могу работать над своим проектом ^^ Большое спасибо за ваши ответы :) - person Yaoming; 02.04.2015
comment
Хорошая информация, но без прямого ответа на вопрос. Ключевым моментом является то, как tizen studio определяет, является ли файл C или C ++. См. Ответ ниже. - person TSG; 31.10.2019

Вы говорите: я искал в Интернете, но ничего не нашел ...

Google "std :: vector" Первое обращение

http://en.cppreference.com/w/cpp/container/vector который говорит:

Определено в заголовке <vector>

Итак, ответ: научитесь использовать Google.

person Dale Wilson    schedule 02.04.2015
comment
Что ж, спасибо за ваш ответ, но я пробовал это ^^ Проблема в том, что Tizen не распознает этот заголовок, когда я пытаюсь его включить. #include ‹vector› не работает ^^ В этом суть проблемы. - person Yaoming; 02.04.2015
comment
@ Яоминг: Что значит "не работает"? Компьютер загорелся? - person Mooing Duck; 02.04.2015
comment
фатальная ошибка: вектор файла не найден. Извините, я недостаточно конкретен ^^ - person Yaoming; 02.04.2015

Я думаю, что был принят неправильный ответ ... ключ кроется в тегах, используемых OP.

Компилятор, используемый студией Tizen, определяет, является ли исходный файл или файл заголовка C или C ++ в зависимости от расширения файла. Итак, если ваш заголовочный файл .h и вы включаете ‹vector>, компилятор будет жаловаться, поскольку для вектора нет эквивалентной библиотеки C в C.

Если вы переименуете заголовок в .hpp или исходный код в .cpp и перекомпилируете, то он будет компилироваться без ошибок.

person TSG    schedule 30.10.2019