问题解决——warning C4503 超出修饰名的长度,名称被截断
========================声明============================
本文原创,转载请注明作者和出处,并保证文章的完整性(包括本声明)。
本文不定期修改完善,为保证内容正确,建议移步原文处阅读。
本文链接:http://blog.csdn.net/wlsgzl/article/details/42236503
=======================================================
领导要实现“以后支持各种检测项目”的功能,这分明就是在坑我。
上个月的代码算是废了,重新写起。
=======================================================
我需要实现一个存储检测标准的东西,支持“不确定的检测项目名、不确定的组成子项名、不确定的子项数目、不确定的子项梯度检测结果”,——感觉就是扔给你一个复合项目的说明书,能把说明书上标注的结果存起来,方便以后使用。
比方说“消化道七项检测”,每一个检测子项的每一种结果都要保存。
=======================================================
想了一会儿(这是个虚词),写了个模型小代码。
搞了类CProjInfo,里面有这么个东西:
std::multimap<CString,std::map<CString,std::map<LONG,CString>>> m_mmmmPI;
虽然不是很好看,但也得先看看这个思路行不行再优化。
=======================================================
编译链接,遇到了警告。
warning C4503 超出修饰名的长度,名称被截断
作为一个使用Level4编译、Ctrl+atl+E里都选中的男人,必须把这弄个明白,于是找资料。
=======================================================
找资料是个技术活,主要是看关键词的提炼。
很轻松的,找到了官方文档。
Compiler Warning (level 1) C4503
http://msdn.microsoft.com/en-us/library/074af4b6.aspx
=======================================================
文章以后再翻译,一看就懂,这里只引用一下微软的代码:
含C4503警告的代码:
// C4503.cpp
// compile with: /W1 /EHsc /c
// C4503 expected
#include <string>
#include <map> class Field{}; typedef std::map<std::string, Field> Screen;
typedef std::map<std::string, Screen> WebApp;
typedef std::map<std::string, WebApp> WebAppTest;
typedef std::map<std::string, WebAppTest> Hello;
Hello MyWAT;
一种解决方案:
// C4503b.cpp
// compile with: /W1 /EHsc /c
#include <string>
#include <map> class Field{};
struct Screen2 {
std::map<std::string, Field> Element;
}; struct WebApp2 {
std::map<std::string, Screen2> Element;
}; struct WebAppTest2 {
std::map<std::string, WebApp2> Element;
}; struct Hello2 {
std::map<std::string, WebAppTest2> Element;
}; Hello2 MyWAT2;
=======================传播点正能量==========================
积累,从点滴做起。俗话说得好,“千里之堤,溃于蚁穴”。
你可能要问,不是应该“千里之行,始于足下”吗?
是的,虽然你知道,但你做到了吗?
========================我反正不知道=========================
当然,简单的做法有:
1 用字符串。
比方说解析“A|B|C-D”。
2 用数据库。
问题解决——warning C4503 超出修饰名的长度,名称被截断的更多相关文章
- Oracle表名、列名、约束名的长度限制
Oracle数据库版本11.2.0.1.0 Oracle表名.列名.约束名的长度限制 1.查询用户所有的表 select * from USER_TABLES; 2.查询用户所有表的列 select ...
- oracle的表名、字段名、constraint名的长度限制分别是多少?
文章出处:http://blog.csdn.net/haiross/article/details/38379615 Oracle:表名.字段名.constraint名的长度有限制 oracle 的命 ...
- MySQL无法重启问题解决Warning: World-writable config file ‘/etc/my.cnf’ is ignored
MySQL无法重启问题解决Warning: World-writable config file ‘/etc/my.cnf’ is ignored
- InnerException 消息是“反序列化对象 属于类型 *** 时出现错误。读取 XML 数据时,超出最大字符串内容长度配额 (8192)。(注意细节)
WEB站点在调用我们WCF服务的时候,只要传入的参数过长,就报如下错误: 格式化程序尝试对消息反序列化时引发异常: 尝试对参数 http://tempuri.org/ 进行反序列化时出错: formD ...
- Web Service 或 WCF调用时读取 XML 数据时,超出最大字符串内容长度配额(8192)解决方法
1.调用服务时服务 当我们使用 Web Service 或 WCF 服务时,常把读取的数据转化为string类型(xml格式),当数据量达到一 定数量时,会出现以下异常: 错误:格式化程序尝试对消息反 ...
- 读取 XML 数据时,超出最大字符串内容长度配额 (8192)
格式化程序尝试对消息反序列化时引发异常: 尝试对参数 http://www.thermo.com/informatics/xmlns/limswebservice 进行反序列化时出错: Process ...
- WCF传送大数据时的错误“ 超出最大字符串内容长度配额”
格式化程序尝试对消息反序列化时引发异常: 尝试对参数 http://tempuri.org/ 进行反序列化时出错: GetLzdtArticleResult.InnerException 消息是“反序 ...
- mysql中修改表字段名/字段长度/字段类型详解
在mysql中我们对数据表字段的修改命令只要使用alter就可以了,下面我来给大家详细介绍mysql中修改表字段名/字段长度/字段类型等等一些方法介绍,有需要了解的朋友可参考. 先来看看常用的方法 M ...
- ORACLE数据库导出表,字段名,长度,类型,字段注释,表注释语句
转自:https://www.cnblogs.com/superming/p/11040455.html --数据库导出表,字段名,长度,类型,字段注释,表注释语句 SELECT T1.TABLE_N ...
随机推荐
- JS魔法堂:精确判断IE的文档模式by特征嗅探
一.前言 苦逼的前端攻城狮都深受浏览器兼容之苦,再完成每一项功能前都要左顾右盼,生怕浏览器不支持某个API,生怕原生API内含臭虫因此判断浏览器类型和版本号成了不可绕过的一道关卡,而特征嗅探是继浏览器 ...
- QCustomplot使用分享(三) 图
一.可以实现的图 相对于其他绘制图表的第三方库来说,QCustomPlot算是比较轻量的,不仅仅能实现功能,而且二次开发比较容易.下面我们来具体说下他可以实现那些图 QCPGraph:折线图,Line ...
- IIS app pools, worker processes, app domains
Copy from http://stackoverflow.com/questions/14105345/iis-app-pools-worker-processes-app-domains I ...
- 我见过的几门语言中的hello world
1.Java public class hello { public static void main(String[] args){ System.out.println("hello w ...
- $(document).ready()即$()方法和window.onload方法的比较
以浏览器装载文档为例,我们都知道在页面完毕后,浏览器会通过JavaScript为DOM元素添加事件.在常规的JavaScript代码中,通常使用window.onload方法,而在jQuery中,使用 ...
- Java中的Set集合接口实现插入对象不重复的原理
在java的集合中,判断两个对象是否相等的规则是: 1).判断两个对象的hashCode是否相等 . 如果不相等,认为两个对象也不相等,完毕 如果相等,转入2)(这一点只是为了提 ...
- Java内存泄露的原因
Java内存泄露的原因 1.静态集合类像HashMap.Vector等的使用最容易出现内存泄露,这些静态变量的生命周期和应用程序一致,所有的对象Object也不能被释放,因为他们也将一直被Vector ...
- Android应用开发基础之九:内容提供者(ContentProvider)
内容提供者 应用的数据库是不允许其他应用访问的 内容提供者的作用:就是让别的应用访问到你的数据库 自定义内容提供者,继承ContentProvider类,重写增删改查方法,在方法中写增删改查数据库的代 ...
- CSS布局——横向两列布局
1.固定两栏布局,使用float,注意对紧邻元素清除浮动影响.IE6在使用float布局同时设置横行margin的情况下会有双边距BUG,解决方案是加入_display:inline 代码如下: &l ...
- jQuery.merge()
jQuery.merge( first, second ) //返回Array 合并两个数组内容到第一个数组. first第一个用来合并的数组,元素是第二数组加进来的. second第二个数组合并到第 ...