stl编译
A. C++ 中STL list编译问题
#include <iostream>
#include <list>
//#pragma warning(disable: 4786)
using namespace std;
typedef list<char> C_LIST;
void listTravel(C_LIST list)
{
C_LIST::iterator itr;
for(itr = list.begin(); itr != list.end(); itr++)
{
cout << *itr <<ends;
}
cout << endl;
}
int listPopFront(C_LIST list,char *ch) //C_LIST是一个list容器,如果你加C_LIST * 那就是一个容器数组,你可以用C_LIST*list 但是要用list[0].front()访问
{
*ch = list.front();
list.pop_front();
return list.size();
}
int main()
{
C_LIST clist;
char ch;
clist.push_back('A');
clist.push_back('B');
clist.push_back('C');
listTravel(clist);
listPopFront(clist,&ch);
listTravel(clist);
}
B. 如何在VC中去掉STL代码编译时编译错误
估计大家编译STL的时候看着一堆一堆的无意义的警告信息都烦了吧,包含
下面的头文件会让你眼前清静一下的,呵呵,这样的文件,估计在BBS上看
起来会很累,所以我就没有折行,因为那样格式就坏了,更不好看,大家
还是mail回去看吧
不过可笑的是以前看着那些警告觉得烦人,都删除了,又觉得有些警告也
挺好,就当是编译进度了,现在除了最后的结束,我都不知道编译了多少
了,呵呵,觉得自己也挺变态的
[cpp] view plain////////////////////////////////////////////////////////////////////// // // Author: Oskar Wieland ([email protected]) // You can modifiy and distribute this file freely. // // Creation: 31.05.2000 // // Purpose: Declarations for using STL without warning noise. // // Usage: Include this file and define at least one of the STL_USING_xxx // macros. Currently supported data types from the STL: // // // defines for using the STL // #define STL_USING_ALL // #define STL_USING_MAP // #define STL_USING_VECTOR // #define STL_USING_LIST // #define STL_USING_STRING // #define STL_USING_STREAM // #define STL_USING_ASSERT // #define STL_USING_MEMORY // #define STL_USING_STACK // // Sample: // #define STL_USING_ALL // #include "STL.h" // ////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////// // include guards ////////////////////////////////////////////////////////////////////// #ifndef STLHELPER_INCLUDED_ #define STLHELPER_INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif ////////////////////////////////////////////////////////////////////// // handy define to include all stuff
C. 用gcc怎样编译STL的c++程序
使用g++直接编译就行了啊
g++-otestmain.cpp
D. 关于STL的一个小问题,一个小程序编译有错误,希望大家帮帮忙
大小写没问题的。
把#include<string.h>
#include<list>
改成
#include<string>
#include<list>
using namespace std;
E. 如何设置使用stl语句编写程序
离线或者编译、保存后再看那个按钮颜色。
最快回答 回答者:钻石用户 WWCWWC- 高级顾问 第14级 2016-11-11 16:39:48
你首先得添加一个块,然后再弹出的对话框中选择FC块或者是FB块或者是其他的,后面就有相应的可以选择的编程语言,有LAD,STL,SCL等编程语言可以选择,然后选择STL,然后点确定,之后创建的块的默认编程语言就是STL语言
回答者:钻石用户 Caiken- 毕业实践员 第4级 2016-11-11 16:46:55
可以在LAD的程序块里面插入stl的network
或者新建FC/FB,选择编辑语言为stl
F. stl源码剖析里的一段源码 vs2013编译不能通过,谁能帮我解答下这是为什么
是stl_alloc.h编译不过还是你的代码里引入了.h文件后编译不过,stl在安装的时候就有的,但是用之前要记得using namespace std;,如果是h编译不过,说明stl本身就出问题了(比如不全,.h找不到等)
G. NDK下STL编译不成功,怎么处理
android ndk 支持 stl,但是该如何添加呢?许多人发现就算在 Application.mk 中添加代码“APP_STL:= gnustl_static”后,就算ndk-build编译通过了,但是eclipse依然会报错 "Symbol 'vector ' could not be resolved",那么该如何正确的添加stl呢?
方便他人亦是方便自己,如果觉得还行就点下右边的投票吧,这样可以帮助其他人更快的找到解决问题的方法;有疑问的也可留言哦, 谢谢!
工具/原料
Win7 x64
adt-bundle-windows-x86_64-20140702
android-ndk-r10
方法/步骤
在 HelloJni.cpp 中直接增加头文件和vector的调用代码:
#include <jni.h>#include <vector>void tst(){ std::vector<int>vec;}
编译后效果如下:
android ndk 如何添加STL
在 Application.mk 中添加代码“APP_STL:= gnustl_static”后,文件中的内容如下:APP_ABI := x86APP_STL:= gnustl_static编译后发现ndk-build可以编译通过了;
android ndk 如何添加STL
但是却发现 eclipse 上面却报出如下错误:
android ndk 如何添加STL
在 Android.mk 中增加 “LOCAL_LDLIBS:= -landroid”,后文件的内容如下:LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE := hello-jniLOCAL_SRC_FILES := hello-jni.c HelloJni.cppLOCAL_LDLIBS:= -landroidinclude $(BUILD_SHARED_LIBRARY)编译后依然:
android ndk 如何添加STL
工程右键 “clean Project”
android ndk 如何添加STL
重新编译一次 快捷键:Ctrl + B,后等待3秒钟左右:
android ndk 如何添加STL
7
H. stl是静态编译的可执行文件中了吗
静态编译与动态编译的区别: 1、动态编译的可执行文件需要附带一个的动态链接库,在执行时,需要调用其对应动态链接库中的命令。 所以其优点一方面是缩小了执行文件本身的体积,另一方面是加快了编译速度,节省了系统资源。 缺点一是哪怕是很简...
I. 使用兼容C++ STL的编译器时、显示什么
fatal error: iostream.h: No such file or directory|
J. 这段C++STL代码为什么编译错误(内有代码和错误提示)
由于编译器版本偏低,只有象下面这样解决了:
m.insert(make_pair( 2, (char*)"am"));
来个强制类型转换。
原因是编译器将 "am" 定为 char[3] 类型,于是 make_pair 会用 "am" 来初始化 char[3] 类型的变量,而且是在类的构造函数中初始化的,这显然不行。
即与下例相同错误:
class X
{
X():arrX("am"){}
char arrX[3];
}