STL&BOOST
文章平均质量分 64
Gary@Tokyo
努力生活!
爱好:登山、游泳
If you dont aim high, you will never hit high.
展开
-
STL中map 和vector嵌套使用示例
暂且只有添加和循环输出,后期再加以改进。 #pragma warning(disable : 4786 ) #include #include #include #include #include using namespace std;typedef map STRING2STRING;typedef std::map > STRING2VE原创 2009-04-18 13:32:00 · 15842 阅读 · 0 评论 -
How to convert wchar_t* to char*
<br />#include <locale> #include <iostream> #include <string> #include <sstream> using namespace std ; wstring widen( const string& str ) { wostringstream wstm ; const ctype<wchar_t>& ctfacet = use_facet< ctype原创 2010-12-30 17:20:00 · 2011 阅读 · 2 评论 -
boost vs2005编译
<br />许多新人对于编译BOOST感到无从下手,甚至因此而放弃使用BOOST,那真的太可惜了,下面我把一些常用的BOOST编译方法贴于此,同时也作为自己的笔记。<br /><br />首先下载bjam.exe,复制到 $BOOST$ 目录下。或者自己生成bjam,打开Visual Studio 2008命令提示窗口$BOOST$/tools/jam/src,执行 build.bat会在$BOOST$/tools/jam/src/bin.ntx86 生成 bjam.exe 文件。复制文件转载 2010-12-08 13:31:00 · 939 阅读 · 0 评论 -
ASCII/Unicode的结合与 STL 的 string 类的方法
<br />我经常在 C++ 程序中使用标准模板库(STL)的 std::string 类,但在 使用 Unicode 时碰到了问题。在使用常规 C 风格的字符串时,我可以使用 TCHAR 和 _T 宏,这样针对 Unicode 或 ASCII 均可以进行编译,但我 总是发现这种ASCII/Unicode的结合很难与 STL 的 string 类一起使用。你有什么好的建议吗?<br />首先回答TCHAR 和_T 是如何工作的?<br />基本思想是 TCHAR 要么是char,要么是 wchar_转载 2010-09-06 18:01:00 · 1133 阅读 · 0 评论 -
STL 字符串类与 UNICODE
Q:我经常在 C++ 程序中使用标准模板库(STL)的 std::string 类,但在 使用 Unicode 时碰到了问题。在使用常规 C 风格的字符串时,我可以使用 TCHAR 和 _T 宏,这样针对 Unicode 或 ASCII 均可以进行编译,但我 总是发现这种ASCII/Unicode的结合很难与 STL 的 string 类一起使用。你有什么好的建议吗? A:是的,一旦知道 TCHAR 和_T 是如何工作的,那么这个问题很简单。基本思想是 TCHAR 要么是c转载 2010-09-06 17:30:00 · 1195 阅读 · 0 评论 -
如何解决VC中的警告warning C4251 needs to have dll-interface
<br />原文地址:http://hi.baidu.com/_%E2d_%B7%B3_%DE%B2%C2%D2/blog/item/a69368fa45782715a9d311c1.html<br /> <br /> <br />这通常是由于以数据成员方式在DLL导出类中使用了模板类造成的。比如:<br />#include <iostream><br />#include <vector><br />using namespace std;<br /><br />class转载 2010-06-04 20:16:00 · 3003 阅读 · 0 评论 -
C++ String Examples
constructors 1.#include #include using namespace std;int main () { char *line = "short line for testing";// with no argumentsstring s1; s1 = "Anatoliy"; cout // copy constructorstring s2 (s1); cout // one argumenstring s原创 2010-06-04 13:41:00 · 1570 阅读 · 0 评论 -
CString/C++ string常用操作详解
<br />之 所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必 担心内存是否足够、字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数情况下(甚至是100%)的需要。我们可以用 = 进行赋值操作,== 进行比较,+ 做串联(是不是很简单?)。我们尽可以把它看成是C++的基本数据类型。<br /> 好了,进入正题………<br />首先,为了在我们的程序中使用string类型,我们必须包含头文件 <string>。如下转载 2010-06-04 13:28:00 · 10619 阅读 · 0 评论 -
编译静态的BOOST libs *-vc90-mt-sgd.lib
The "lib" prefix is for static libraries. Use link=staticThe 's' letter is to static linking to runtime. Use runtime-link=staticThe 'd' is debug, use variant=debugThe 'g' is using debug runtime, I think it's included in 'debug' variantalrea原创 2010-07-26 17:02:00 · 4032 阅读 · 0 评论 -
Building Boost libraries for Visual Studio
原文:http://www.codeproject.com/kb/tips/Building_boost_libraries.aspx有空就翻译Building boost libraries for Visual StudioDownload source files - 1.96 KBIntroductionThe Boost initiative is the next hottest thing after STL for the C++ community. While the docum翻译 2010-07-22 15:39:00 · 1273 阅读 · 0 评论 -
VS2008 安装 Boost 1.43.0
<br />1.打开 www.boost.org 下载最新版本 1.43.0, 解压至 D 盘根目录。<br />2.打开 Visual Studio 2008 命令提示窗口<br />3.进入 D:/boost_1_43_0/tools/jam/src<br />4.执行 build.bat ,会在 D:/boost_1_43_0/tools/jam/src/bin.ntx86 生成 bjam.exe 文件,复制 bjam.exe 文件到 D:/boost_1_43_0 下。<br />5.修改 D:转载 2010-07-22 16:52:00 · 1048 阅读 · 0 评论 -
stl中vector,list,deque的使用准则
在stl中提供了vector, list,deque几种可当作列表使用的数据结构,他们都是动态增长的,在这三者之中选择的准则主要是关注插入特性以及对元素的后续访问要求。vector表示一段连续的内存区域每个元素被顺序存储在这段内存中。对vector 的随机访问效率很高 。但是在任意位置而不是在vector 末尾插人元素则效率很低,因为它需要把待插入元素右边的每个元素都拷贝一遍。类似地转载 2010-02-26 19:32:00 · 4733 阅读 · 0 评论 -
C和C++的时间编程
unix时间相关,也是标准库的这些在1.timegm函数只是将struct tm结构转成time_t结构,不使用时区信息;time_t timegm(struct tm *tm);2.mktime使用时区信息time_t mktime(struct tm *tm);timelocal 函数是GNU扩展的与posix函数mktime相当time_t timelocal (struct tm转载 2009-05-18 17:33:00 · 1724 阅读 · 2 评论 -
STLport-4.5.3在Visual C++6.0环境中的编译和配置
参考:http://jjhou.csdn.net/myan-stlport.htm1.目录介绍本文解压缩STLport 在目录D:/STLport-4.5.3/下STLport-4.5.3文件夹里的内容: README - 自述文件 INSTALL - 安装说明 doc - STLPort的发行文档 etc - 杂七转载 2009-05-05 21:00:00 · 2366 阅读 · 0 评论 -
STL关联式容器中删除元素的方法和陷阱
在STL(标准模板库)中经常会碰到要删除容器中部分元素的情况,本人在编程中就经常编写这方面的代码,在编码和测试过程中发现在STL中删除容器有很多陷阱,网上也有不少网友提到如何在STL中安全删除元素这些问题。 上一篇文章主要讨论序列式容器vector、list中安全删除元素的方法和可能会遇到的陷阱,这一次讨论在map(multimap)容器中如何安全的删除和插入元素。 map(mult转载 2009-04-29 16:26:00 · 1547 阅读 · 0 评论 -
正确运用stl map的erase方法
调试程序时候又遇见map中erase方法,以前也遇到相关问题,所以记录在blog中STL的map表里有一个erase方法用来从一个map中删除掉指令的节点eg:map mapTest;typedef map::iterator ITER;ITER iter=mapTest.find(key);mapTest.erase(iter);像上面这样只是删除单个节点,m原创 2009-04-29 16:15:00 · 10604 阅读 · 1 评论 -
string库及其函数
WMLScript的String库包含了一系列的用于字符串处理的函数。前文述及,字符串可以看作是一个字符数组。在该数组中,每个字符都有一个下标序号,其中左起第1个字符的序号是0,其他字符的序号由左向右依次递增。使用String库函数处理字符串时,经常需要利用字符的序号实现对字符的操作。字符串也是有长度,其长度就是数组中字符的个数。另外,为了便于String库函数处理字符串,WMLScri转载 2009-04-23 16:13:00 · 2760 阅读 · 0 评论 -
A sample for map
map::insert, map::find, and map::end (STL Sample)@import url(MS-ITS:dsmsdn.chm::/html/msdn_ie4.css);////////////////////////////////////////////////////////////////////////// Compile optio转载 2009-04-18 11:21:00 · 1163 阅读 · 0 评论 -
C2005中System::String转换为std::string
<br />http://msdn.microsoft.com/zh-cn/library/1b4az623%28VS.80%29.aspx<br /> <br />可以在不使用 Vcclr.h 中的 PtrToStringChars 的情况下将 String 转换为 std::string 或 std::wstring。示例复制// convert_system_string.cpp<br />// compile with: /clr<br />#include <string>转载 2010-12-30 17:55:00 · 1155 阅读 · 0 评论