当前位置: 首页 > news >正文

世界500强企业招聘网站wordpress退出维护

世界500强企业招聘网站,wordpress退出维护,常用的网络营销推广方法有哪些,桥头镇网站仿做新手发帖#xff0c;很多方面都是刚入门#xff0c;有错误的地方请大家见谅#xff0c;欢迎批评指正 一#xff1a;背景 作为一名C开发人员#xff0c;我始终很期待能够像C#与JAVA那样#xff0c;可以省力的进行对象的序列化与反序列化#xff0c;但到现在为止#xff… 新手发帖很多方面都是刚入门有错误的地方请大家见谅欢迎批评指正     一背景     作为一名C开发人员我始终很期待能够像C#与JAVA那样可以省力的进行对象的序列化与反序列化但到现在为止还没有找到相对完美的处理方案。     本文旨在抛砖引玉期待有更好的处理方案同时向大家追求帮助处理本文中未处理的问题。      二相干技术介绍     本方案采取JsonCpp来做具体的JSON的读入与输出再结合类成员变量的映射终究实现对象的JSON序列化与反序列化。     本文不再探讨如何使用JsonCpp此处将作者在应用时发现的两处问题进行说明     1.       下载Jsoncpp编译其lib并且引用到项目中发现有如下错误     错误1       fatal error C1083: Cannot open compiler generated file: ../../build/vs71/release/lib_json\json_writer.asm: No such file or directory       c:\Documents and Settings\Administrator\jsoncpp-src-0.6.0-rc2\jsoncpp-src-0.6.0-rc2\src\lib_json\json_writer.cpp     错误2       fatal error LNK1257: 代码生成失败     JasonSerialize             可以通过在修改LIB库项目的属性处理如下图[关闭汇编输出]          2.      JSONCPP官网首页的下载版本是0.5.0此版本不支撑Int64等类型下载版本jsoncpp-src-0.6.0-rc2后便可支撑.      三一个基于JsonCpp的序列化与反序列化基类     先看代码 #pragma once #include string #include vector #include json/json.h using std::string; using std::vector; struct CJsonObejectBase { protected:enum CEnumJsonTypeMap{asInt 1,asUInt,asString,asInt64,asUInt64,}; public:CJsonObejectBase(void){} public:virtual ~CJsonObejectBase(void){}string Serialize(){Json::Value new_item; int nSize m_listName.size();for (int i0; i nSize; i ){void* pAddr m_listPropertyAddr[i];switch(m_listType[i]){case asInt:new_item[m_listName[i]] (*(INT*)pAddr);break;case asUInt:new_item[m_listName[i]] (*(UINT*)pAddr);break;case asInt64:new_item[m_listName[i]] (*(LONGLONG*)pAddr);break;case asUInt64:new_item[m_listName[i]] (*(ULONGLONG*)pAddr);break;case asString:new_item[m_listName[i]] (*(string*)pAddr);default://我暂时只支撑这几种类型须要的可以自行添加 break;} }Json::FastWriter writer; std::string out2 writer.write(new_item); return out2;}bool DeSerialize(const char* str){Json::Reader reader; Json::Value root;if (reader.parse(str, root)){ int nSize m_listName.size();for (int i0; i nSize; i ){void* pAddr m_listPropertyAddr[i];switch(m_listType[i]){case asInt:(*(INT*)pAddr) root.get(m_listName[i], 0).asInt();break;case asUInt:(*(UINT*)pAddr) root.get(m_listName[i], 0).asUInt();break;case asInt64:(*(LONGLONG*)pAddr) root.get(m_listName[i], 0).asInt64();break;case asUInt64:(*(ULONGLONG*)pAddr) root.get(m_listName[i], 0).asUInt64();break;case asString:(*(string*)pAddr) root.get(m_listName[i], ).asString();default://我暂时只支撑这几种类型须要的可以自行添加 break;} }return true;}return false;} protected:void SetProperty(string name, CEnumJsonTypeMap type, void* addr){m_listName.push_back(name);m_listPropertyAddr.push_back(addr);m_listType.push_back(type);}virtual void SetPropertys() 0;vectorstring m_listName;vectorvoid* m_listPropertyAddr;vectorCEnumJsonTypeMap m_listType; }; 每日一道理 爱有的时候不须要山盟海誓的承诺但她一定须要细致入微的关怀与问候爱有的时候不须要梁祝化蝶的悲壮但她一定须要心有灵犀的默契与投合爱有的时候不须要雄飞雌从的追随但她一定须要相濡以沫的支撑与理解。     此类主要有三个函数Serialize、DeSerialize及 SetPropertys、SetProperty其中前两个函数主要是用来实现对象的序列化与反序列化SetPropertys是一个纯虚函数如果一个类须要具备序列化功能只须要从此类继承同时调用SetProperty函数将各个字段的属性进行设置便可。       四使用对象的序列化及反序列化功能     要使对象具体相应功能须要继承上述的基类如下  struct CTestStruct : public CJsonObejectBase {CTestStruct(){SetPropertys();}ULONGLONG MsgID;string MsgTitle;string MsgContent; protected://子类须要实现此函数并且将相应的映射关系进行设置 virtual void SetPropertys(){SetProperty(MsgID, asUInt64, MsgID);SetProperty(MsgTitle, asString, MsgTitle);SetProperty(MsgContent, asString, MsgContent);} };     继承后我们可以使用如下代码来进行测试     序列化  void CJasonSerializeDlg::OnBnClickedOk() {CTestStruct stru;stru.MsgID 11223344;stru.MsgTitle 黑黑;stru.MsgContent 哈哈;CString strTest stru.Serialize().c_str();AfxMessageBox(strTest); }     结果          反序列化:  void CJasonSerializeDlg::OnBnClickedOk2() {const char* pstr {\MsgContent\:\哈哈22\,\MsgID\:11111111111111111,\MsgTitle\:\黑黑22\};CTestStruct stru;stru.DeSerialize(pstr);CString strShow ;strShow.Format(MsgID:%I64u\r\nMsgTile:%s\r\nMsgContent:%s, stru.MsgID, stru.MsgTitle.c_str(), stru.MsgContent.c_str());AfxMessageBox(strShow); }     结果           五未处理的问题     1.       现在我对属性的映射采取的是vector次序映射的方式这样必需在子类中对每个属性进行设置是不是有宏的策略可以使这部分工作更加省力     2.       现在只支撑整型、64位整型及字符串类型须要支撑其他类型可以在基类中添加映射便可。     3.       现在只支撑单个简略对象[其属性均为简略类型]的序列化与反序列化暂时未斟酌如何支撑复杂的如外部包括其他的复杂对象、包括数组等情况。      完整代码请于如下链接下载      http://download.csdn.net/detail/tragicguy/5630473 文章结束给大家分享下程序员的一些笑话语录 程序员的愿望   有一天一个程序员见到了上帝.上帝: 小伙子,我可以满足你一个愿望.程序员: 我希望中国国家队能再次打进世界杯.   上帝: 这个啊!这个不好办啊,你还说下一个吧!   程序员: 那好!我的下一个愿望是每天都能休息6个小时以上.   上帝: 还是让中国国家打进世界杯. --------------------------------- 原创文章 By 序列化和对象--------------------------------- 转载于:https://www.cnblogs.com/xinyuyuanm/p/3150403.html
http://www.pierceye.com/news/200783/

相关文章:

  • 做网站优化有前景吗可信网站验证服务中心
  • 韩国设计欣赏网站天津工程建设网官方网站
  • 微网站建设多少钱网站空间管理
  • 济南网站制作定制公司wordpress重新安装主题
  • python 网站开发教程怎么做网站跳转
  • 个人盈利网站怎么建立网站建设 深圳 凡科
  • 网站后台登录地址滨州论坛网站建设
  • 怎么给钓鱼网站做防红wordpress插件合集
  • 骆驼网站建设is_category wordpress
  • 网站中链接怎么做的怎么做资源网站
  • 石家庄建站模板搭建cdr做网站分辨率
  • 学校网站建设有限公司长春网站设计策划书
  • 大连网站建设流程图龙信建设集团网站
  • 徐州好点的做网站的公司深圳做商城网站建设
  • 上海龙象建设集团公司网站网站浮动咨询代码
  • 网站制作培训学校手机网站可以做动态吗
  • 企业推广网站网站开发页面怎么进
  • 嘉兴平湖网站建设网站的底部导航栏怎么做
  • 景安 怎么把网站做别名山东新华电脑学院学网站开发
  • 网站开发好还是app好wordpress 禁用修订
  • win7云主机怎么做网站贵州建设监理网站培训通知栏
  • 制作网站免费建站成都设计公司deanzhang
  • 10个网站用户体验优化的研究结果免费图片设计
  • 做明星网站打广告新闻20条摘抄大全
  • 佛山提供网站设计方案公司wordpress 2.0漏洞
  • wordpress建站教程视频教程百度推广登录首页
  • dede织梦php文章图片网站源码 完整后台 带在线音乐做企业网站进行推广要多少钱
  • 网站正在建设中手机版基于wordpress论文
  • 建设培训网站查询战网
  • 正能量网站下载做网站沧州