在Tizen中包含std::vector的库

What library to include for std::vector in Tizen?

本文关键字:vector 的库 std 包含 Tizen      更新时间:2023-10-16

我想为我用Tizen创建的应用程序使用std::vector,但我找不到合适的库来包含它,从而使我的std::vector被识别。。。我有语法错误。。。Tizen是否有std::vector的等价物?我在网上搜索了一下,但什么也没找到。。。

我尝试过#include <vector> Tizen没有识别它,这就是我的问题所在,因为在"正常"C++中它工作得很好。只有我在Tizen IDE(Eclipse插件)中使用Tizen,它无法识别库,所以我想知道我需要包含哪个库(我遇到了一个致命的错误:当我使用我提到的include时找不到文件)。

我不能发布图片,所以这里有一个错误消息的文字记录:

类型名称需要说明符或限定符
语法错误
预期表达式"

关于这条线的所有信息:

std::vector<int> vect;

好的,我找到了答案。Tizen似乎在使用C而不是C++。。。我没有看到它,因为我在C++中编写代码时有时会使用的一些库被包含在内。不管怎样,我现在只需要找到向量的C等价物,我的问题就会得到解决

https://developer.tizen.org/dev-guide/2.2.0/

Tizen C++应用程序支持基于标准C++ANSI ISO 14882 2003的C++,其中包括标准模板库(STL)。这有助于开发人员以最小的工作量将预先存在的基于标准库的应用程序迁移到Tizen平台。

更具体地说,Tizen支持一整套libstdc++v3,包括标准C++ANSI ISO 14882 2003中指定的标准C++函数和整个标准模板库(http://www.sgi.com/tech/stl/)。

这些方法可以通过以标准方式包括相关头文件来使用,例如"#include <stdio>"。对标准C++库的支持扩展到一整套libstdc++v3模块、命名空间和类。有关详细信息,请参阅此网站。

备注:Tizen不支持基于区域设置的功能。

所以#include <vector>应该可以正常工作。

由于您说不能包含任何C++头,我怀疑问题在于编译器将代码编译为C而不是C++。确认您的文件具有.cpp扩展名,并在项目中查看该文件的属性,以确认IDE将该文件视为C++。(我不知道这个设置在哪里,我没有Eclipse)。这个链接说删除你的项目并创建一个C++项目而不是C项目,然后重新导入你的文件。这个链接说你可以设置"文件类型",但也暗示它不太有效。

你说:我在网上搜索了一下,但什么都没找到。。。

谷歌"std::vector"第一个点击是

http://en.cppreference.com/w/cpp/container/vector上面写着:

在标题<vector> 中定义

所以答案是:学会使用谷歌。

我认为接受了错误的答案。。。线索在作战人员使用的标签中。

Tizen studio使用的编译器根据文件扩展名确定源文件或头文件是C还是C++。因此,如果您的头文件是.h,并且您包含<vector>则编译器会抱怨,因为vector没有C等价库。

如果将头重命名为.hpp,或将源重命名为.cpp,然后重新编译,则它将编译时不会出错。