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

宁晋网站建设网络公司wordpress 无法注册

宁晋网站建设网络公司,wordpress 无法注册,wordpress后台无法变中文,手机排名哪个网站最权威上回我们完成了string类的模拟实现#xff0c;不过之前写的传统写法本篇#xff0c;我们将要对其进行一些改进#xff0c;写成参考的是现代写法#xff0c;这样写可以提高可读性。 上回我们写好的string类 //string.h #pragma once#define _CRT_SECURE_NO_WARNINGS 1 #p…上回我们完成了string类的模拟实现不过之前写的传统写法本篇我们将要对其进行一些改进写成参考的是现代写法这样写可以提高可读性。 上回我们写好的string类 //string.h #pragma once#define _CRT_SECURE_NO_WARNINGS 1 #pragma once #includeiostream #includeassert.h using namespace std;namespace STring {class string{public:typedef char* iterator;typedef const char* const_iterator;iterator begin();iterator end();const_iterator begin() const;const_iterator end() const;//string();string(const char* str );string(const string s);string operator(const string s);~string();const char* c_str() const;size_t size() const;char operator[](size_t pos);const char operator[](size_t pos) const;void reserve(size_t n);void push_back(char ch);void append(const char* str);string operator(char ch);string operator(const char *str);void insert(size_t pos, char ch);void insert(size_t pos, const char* str);void erase(size_t pos 0, size_t len npos);size_t find(char ch, size_t pos 0);size_t find(const char* str, size_t pos 0);void swap(string s);string substr(size_t pos 0, size_t len npos);bool operator(const string s) const;bool operator(const string s) const;bool operator(const string s) const;bool operator(const string s) const;bool operator(const string s) const;bool operator!(const string s) const;void clear();private:// char _buff[16];char* _str;size_t _size;size_t _capacity;// //const static size_t npos -1;// ֧//const static double N 2.2;const static size_t npos;};istream operator (istream is, string str);ostream operator (ostream os, const string str); } //string.cpp #includestring.h namespace STring {const size_t string::npos -1;string::iterator string::begin(){return _str;}string::const_iterator string::begin() const{return _str;}string::iterator string::end(){return _str _size;}string::const_iterator string::end() const{return _str_size;}string:: string(const char* str):_size(strlen(str)){_str new char[_size1];_capacity _size1;strcpy(_str, str);}string::string(const string s){_str new char[s._capacity];strcpy(_str, s._str);_size s._size;_capacity s._capacity;}string::~string(){delete[] _str;_str nullptr;_size _capacity 0;}const char* string::c_str() const{return _str;}size_t string :: size() const{return _size;}void string::reserve(size_t n){if (n _capacity){char* tmp new char[n 1];strcpy(tmp, _str);delete[] _str;_str tmp;_capacity n;}}void string::push_back(char ch){if (_size _capacity){size_t newcapacity _capacity 0 ? 4 : _capacity * 2;reserve(newcapacity);}_str[_size] ch;_str[_size 1] \0;_size;}void string::append(const char* str){size_t len strlen(str);if (_size len _capacity){reserve(_size len);}strcpy(_str _size, _str);_size len;insert(_size, _str);}void string::insert(size_t pos, char ch){assert(pos _size);if (_size _capacity){size_t newcapacity _capacity 0 ? 4 : _capacity * 2;reserve(newcapacity);}size_t end _size 1;while (end pos){_str[end] _str[end - 1] 1;--end;}_str[pos] ch;_size;}void string::insert(size_t pos, const char* str){assert(pos _size);int len strlen(str);if (_size len _capacity){reserve(_capacitylen);}size_t end _size len;while (end poslen1){_str[end] _str[end - len];--end;}memcpy(_strpos,str,len);_size len;}void string::erase(size_t pos, size_t len){assert(pos _size);if (len _size - pos){_str[pos] \0;_size len;}else{strcpy(_str pos, _str pos len);_size len;}}size_t string::find(char ch, size_t pos){for (size_t i pos; i _size; i){if (_str[i] ch){return i;}}return npos;}size_t string::find(const char* str, size_t pos){char* p strstr(_str pos, str);return p - _str;}void string::swap(string s){std::swap(_str, s._str);std::swap(_size, s._size);std::swap(_capacity, s._capacity);}string string::substr(size_t pos, size_t len){if (len _size - pos){string sub(_str pos);return sub;}else{string sub;sub.reserve(len);for (size_t i 0; i len; i){sub _str[i pos];}return sub;}}string string:: operator(const string s){if (this ! s){char* tmp new char[s._capacity];strcpy(tmp, s._str);delete[] _str;_str tmp;_size s._size;_capacity s._capacity;}return *this;}char string::operator[](size_t pos){if (pos _size)return _str[pos];}const char string::operator[](size_t pos) const{if (pos _size)return _str[pos];}string string::operator(char ch){push_back(ch);return *this;}string string::operator(const char* str){append(str);return *this;}bool string::operator(const string s) const{return strcmp(_str, s._str) 0;}bool string::operator(const string s) const{return !(*this s);}bool string::operator(const string s) const{return *this s || *this s;}bool string::operator(const string s) const{return !(*this s);}bool string::operator(const string s) const{return strcmp(_str, s._str) 0;}bool string::operator!(const string s) const{return !(*this s);}void string::clear(){_str[0] \0;_size 0;}istream operator (istream is, string str){str.clear();char ch is.get();while (ch ! ch ! \n){str ch;ch is.get();}return is;}ostream operator (ostream os, const string str){for (size_t i 0; i str.size(); i){os str[i];}return os;} } 以下是现代写法对于 传统写法的改进 一、push_back 传统写法 void string::push_back(char ch) {if (_size _capacity){size_t newcapacity _capacity 0 ? 4 : _capacity * 2;reserve(newcapacity);}_str[_size] ch;_str[_size 1] \0;_size; } 现代写法 void string::push_back(char ch){insert(_size, ch);} 二、append 传统写法 void string::append(const char* str){size_t len strlen(str);if (_size len _capacity){reserve(_size len);}strcpy(_str _size, _str);_size len;insert(_size, _str);} 现代写法 void string::append(const char* str){insert(_size, str);}
http://www.pierceye.com/news/61793/

相关文章:

  • 海洋公司做网站推广长安大学门户网站是谁给做的
  • 网站的主题有哪些手机百度经验首页登录官网
  • 山东潍坊网站制作公司下载网站 源码
  • 锡林郭勒盟网站建设网站开发的工作
  • 湛江网站制作优化淘宝网页版怎么注销账号
  • 怎么做购物优惠券网站马鞍山建设局网站
  • dede网站名称更改不了禅城建设网站
  • 网站快速备案安全吗重庆网络公司排行榜
  • 济南网站制作开通用什么网站做ppt
  • dedecms 做影网站大学网站建设定制网站建设
  • 网站开发人员工工资企业标准化建设
  • 建立企业网站的缺点云南商城网站建设
  • 网站建设哪里好wordpress 漏洞攻击
  • 做网站水印营销网络建设怎么写
  • 做网站名词wordpress视频教程 电驴
  • 网站速度测速山西教育平台网站建设
  • 电脑做网站端口映射网站设置301重定向
  • 绍兴高兴区建设网站开发网页多少钱
  • 单页网站对攻击的好处陕西seo经理
  • 温州市网站建设公司自动升级wordpress失败 —— 请再试一次.
  • 请简述网站建设的一般流程图wordpress 经典案例
  • 网站访问速度慢的原因购物网站留言反馈页面
  • 网站建设基本流程教学视频教程网站建设平台网站设计
  • 宠物论坛网站策划书学会网站建设三方协议
  • 上海闵行做网站的公司h5网站建设作用
  • wordpress站群系统上海网站推广公司排名
  • 免费注册自己的网站网站关键词优化代码
  • 萍乡建设网站大连新图闻网站设计
  • 国外 素材 网站dw做网站 怎么做背景图片
  • 晚上必看正能量网站短视频ps做网站对齐技巧