vs2010中的hash_map调用方式:
需要头文件<hash_map>和命令空间stdext,且需要为不同key类型定义相应的comparator
#include <hash_map> using namespace stdext; struct intLess : public std::binary_function<const int, const int, bool> { public: result_type operator()(const first_argument_type& _Left, const second_argument_type& _Right) const { return _Left == _Right; } }; struct charLess : public std::binary_function<const char*, const char*, bool> { public: result_type operator()(const first_argument_type& _Left, const second_argument_type& _Right) const { return(_stricmp(_Left, _Right) < 0 ? true : false); } };
这样就产生了一个要命的问题:hash_map的key必须为const。这个要求只有在vs2012之前版本才有;gcc我碰到的版本都没有。
如果你用新版本,比如vs2015,那么就会碰到这种编译错误:
Microsoft Visual Studio 14.0\VC\INCLUDE\xstddef(377): error C2338: The C++ Standard doesn't provide a hash for this type.
原因就是这个const不再需要了,另外C++11已经添加了std::unordered_map,且不需要自己实现了comparator,使用起来比旧版的hash_map更方便。微软设计一些反人类的api也够坑的。
总结:
除了vs2010下的stdext::hash_map的key需要为const外,其他情况下的map都不需要为const,其中std::unordered_map的key必须不能为const,std::map可以为const也可以不为const。
相关推荐
针对maven项目搭建时,出现missing artifacts:javax.sql:jdbc-stdext:2.0错误解决。因为授权的问题,在maven的中心库里没有这个jar包。可下载到本地引用。
jdbc2_0-stdext.jar jdbc2_0-stdext.jar
JavaEE源代码 jdbc2_0-stdextJavaEE源代码 jdbc2_0-stdextJavaEE源代码 jdbc2_0-stdextJavaEE源代码 jdbc2_0-stdextJavaEE源代码 jdbc2_0-stdextJavaEE源代码 jdbc2_0-stdextJavaEE源代码 jdbc2_0-stdextJavaEE源...
Web服务器端对客户端的请求处理结果,可以做缓存处理,降低服务器端资源的占用。支持数据对象、页面的缓存处理。一共有2个jar包,经过项目测试可用。
MySQL 驱动包 jdbc2_0-stdext.jar,mysql-connector-java-3.0.16-ga-bin.jar,proxool-0.8.3.jar
spring版本有2.0,2.5的,hibernate版本较多些至3.2,首先选版本就选择最优的,struts2没的选只有2.1.6版的,所以先导入struts2支持,然后是spring选的是2.0,问题就出在struts2中spring的插件上了,没有从MyEclipse...
jdom.jar jstl.jar log4j-1.2.13.jar ojdbc14._jar standard.jar commons-net-1.4.1.jar xml-apis.jar jdbc2_0-stdext.jar
oro.jar jakarta-oro-2.0.8.jar JAMon.jar jasperreports-1.0.2.jar jaxen-1.1-beta-4.jar jdbc2_0-stdext.jar jmxremote.jar jmxremote_optional.jar jmxri.jar jotm.jar jta.jar junit.jar jxl.jar mysql-...
1.1-beta-7.jar jdbc2_0-stdext.jar jta.jar log4j-1.2.11.jar xerces-2.6.2.jar xml-apis.jar c3p0-0.9.0.jar concurrent-1.3.2.jar connector.jar jboss-cache.jar jboss...
jdbc2_0-stdext.jar,服务端web开发,加载数据源必备jar包,欢迎分享
jdbc2_0-stdext.jar jstl.jar jta.jar junit.jar log4j-1.2.8.jar msslserver2.jar spring.jar spring-mock.jar standard.jar struts.jar strutstest-2.1.0.jar xerces.jar xml-apis.jar 还有好多,大家拿去吧。总会...
logging.jar commons-logging-1.0.4.jar commons-validator.jar dom4j-1.6.1.jar dwr.jar hibernate3.jar jaas.jar jakarta-oro.jar jaxen-1.1-beta-7.jar jdbc2_0-stdext.jar jstl.jar jta.jar junit-4.1.jar log4j...
jdbc2_0-stdext jotm json-lib-2.3-jdk15-javadoc jta jxl log4j-1.2.11 log4j-1.2.14 portlet-api spring-agent spring-aop spring-beans spring-context spring-core spring-dao spring-hibernate3 spring-ibatis ...
完全由Spring接管DWR AJAX处理(不需要配置dwr.xml)等技术点 源码在/mytest/WEB-INF/src下 Winxp sp3+JDK1.6+Tomcat 6.0下运行通过 因文件长度限制,未加入相关类库,请自行加入,需要的类库有: dom.jar...
antlr-2.7.5H3.jar asm.jar asm-attrs.jar c3p0-0.9.1-pre5a.jar cglib-2.1.jar commons-collections-2.1.1.jar ...jdbc2_0-stdext.jar jta.jar jtds-1.2.2.jar pull-parser-2.1.10.jar 只多不少。
collections-2.1.1.jar commons-logging-1.0.4.jar dom4j-1.6.1.jar ehcache-1.1.jar hibernate3.jar jaas.jar jaxen-1.1-beta-7.jar jdbc2_0-stdext.jar jta.jar log4j-1.2.11.jar ...
jboss-jmx.jar jboss-system.jar jdbc2_0-stdext.jar jgroups-2.2.8.jar jstl.jar jta.jar jxl.jar log4j-1.2.11.jar log4j-1.2.14.jar mysql-connector-java-3.1.13-bin.jar Oracle10g.jar oscache-2.1.jar ...
jdbc2_0-stdext.jar (2.0) - Standard Extension JDBC APIs - runtime, required for standalone operation (outside application server) ant-antlr-1.6.5.jar (1.6.5) - Ant antlr support - buildtime jboss-...
数据库书写论文代码讲解网上... <classpathentry kind="lib" path="WebRoot/WEB-INF/lib/jdbc2_0-stdext.jar"/> <classpathentry kind="lib" path="WebRoot/WEB-INF/lib/xerces-2.6.2.jar"/>
jdbc2000和jdbc2005的jar包