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

沈阳红方城网站建设中小企业名录查询官网入口

沈阳红方城网站建设,中小企业名录查询官网入口,工装,网站主机选择共享内存由于是多进程共享的#xff0c;里面的数据不适合包含指针#xff0c;因为共享内存在不同进程里的地址并不相同。尽管可以在连接共享内存时指定连接地址#xff0c;但是#xff0c;这样做限制太多#xff1a; 不同硬件、系统这个地址可能不一样#xff0c;没有通…        共享内存由于是多进程共享的里面的数据不适合包含指针因为共享内存在不同进程里的地址并不相同。尽管可以在连接共享内存时指定连接地址但是这样做限制太多 不同硬件、系统这个地址可能不一样没有通用性动态挂载、卸载不能保证地址可用从而只能在进程加载时尽早连接共享内存不同的使用共享内存的组件存在冲突可能导致地址不可用 因此坚持由系统分配连接地址是合理的。这样就要求共享内存里的数据不包含指针通常我们都选择只使用简单结构但是即使是简单结构我们也可以尽量包装一下方便使用。 这里就是一个字符串的模板sstringint用来替代sstring。设计思想很简单就是个定长数组提供类似string的操作。 这个代码在sstring后面还包含了两个运算符重载用来支持和。 代码是用于unix/linux的。 #include cstring #include string//定长字符数组模板共享内存不能用stringchar[]又不安全 template long BUFSIZE class sstring { private:char data[BUFSIZE];static void _copydata(char * buf, char const * source){buf[BUFSIZE - 1] \0;long i 0;for (; i BUFSIZE - 1; i){buf[i] source[i];if (\0 source[i])break;}for (; i BUFSIZE - 1; i){buf[i] \0;}} public:sstring() { memset(data, 0, BUFSIZE); }~sstring() { memset(data, 0, BUFSIZE); }sstring(sstring const tmp) { _copydata(data, tmp.data); }sstring(char const * psz) { _copydata(data, psz); }sstring(std::string const str) { _copydata(data, str.c_str()); }sstring operator(sstring const tmp) { _copydata(data, tmp.data); return *this; }sstring operator(char const * psz) { _copydata(data, psz); return *this; }sstring operator(std::string const tmp) { _copydata(data, tmp.c_str()); return *this; }long size()const { return strlen(data); }char const * c_str()const { return data; }char const operator [](long off)const { return data[off]; }bool operator (char const * tmp)const { return 0 strcmp(data, tmp); }bool operator (sstring const tmp)const { return 0 strcmp(data, tmp.data); }bool operator (std::string const tmp)const { return 0 strcmp(data, tmp.c_str()); }bool operator ! (char const * tmp)const { return 0 ! strcmp(data, tmp); }bool operator ! (sstring const tmp)const { return 0 ! strcmp(data, tmp.data); }bool operator ! (std::string const tmp)const { return 0 ! strcmp(data, tmp.c_str()); }bool operator (char const * tmp)const { return 0 strcmp(data, tmp); }bool operator (sstring const tmp)const { return 0 strcmp(data, tmp.data); }bool operator (std::string const tmp)const { return 0 strcmp(data, tmp.c_str()); }bool operator (char const * tmp)const { return 0 strcmp(data, tmp); }bool operator (sstring const tmp)const { return 0 strcmp(data, tmp.data); }bool operator (std::string const tmp)const { return 0 strcmp(data, tmp.c_str()); }bool operator (char const * tmp)const { return 0 strcmp(data, tmp); }bool operator (sstring const tmp)const { return 0 strcmp(data, tmp.data); }bool operator (std::string const tmp)const { return 0 strcmp(data, tmp.c_str()); }bool operator (char const * tmp)const { return 0 strcmp(data, tmp); }bool operator (sstring const tmp)const { return 0 strcmp(data, tmp.data); }bool operator (std::string const tmp)const { return 0 strcmp(data, tmp.c_str()); } };template long BUFSIZE inline std::ostream operator (std::ostream out, sstringBUFSIZE const data) {out data.c_str();return out; }template long BUFSIZE inline std::istream operator (std::istream in, sstringBUFSIZE data) {std::string tmp;in tmp;data tmp;return in; }这个代码在我的共享内存体系里是个基础对象广泛使用。 这里是结束
http://www.w-s-a.com/news/245912/

相关文章:

  • 石狮网站建设哪家好wordpress 3.9 漏洞
  • 为何建设单位网站找网络推广策畿
  • 用网站模板做网站动漫制作专业学校前十名
  • 网页 代码怎么做网站网站建设与维护课程设计
  • 网站制作哪家公司好企业名录联系电话
  • 做的网站怎么上传到网上wordpress图片之间空一行
  • 腾讯云建设网站视频vi报价单
  • 个人网站发布怎么做建设银行网站收款怎么打明细
  • 网站整体色调网站建设都有什么类型
  • 比较简洁大方的网站软件工程四大方向
  • 大家称赞的网站建设常德小学报名网站
  • 做网站怎么建文件夹百度网盘搜索神器
  • 企业有域名怎么做网站淘宝推广平台
  • 学网站开发去哪学药品销售推广方案
  • 哔哩哔哩h5播放器深圳网站seo外包公司哪家好
  • asp做的手机网站wordpress 文章title
  • 网站验证码目录wordpress内嵌播放器
  • 文明网网站建设南昌市建设规费标准网站
  • 安康有建网站的公司吗做网站用什么网名好
  • 济南网站制作哪家专业西安市城乡建设网官方网站
  • 网站建设有趣小游戏怎样让网站优化的方式
  • 昭通做网站儿童编程教学入门教程
  • eclipse静态网站开发软文广告投放平台
  • 网站建设教学视频济南做网站需要多少钱
  • 网站免费做软件市工商联官方网站建设方案
  • 网站建设大体包含英铭长沙网站建设
  • 网站建设培训学校北京如何搜索网站
  • discuz论坛模板哪些网站容易做seo优化
  • 渭南公司做网站网站建设互联网推广
  • 公司网站app怎么做杭州建设局网站