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

申请网站域名怎么做微商系统

申请网站域名怎么做,微商系统,wordpress默认编辑器设置,网站建设 风险目录1、Delegation Constructor#xff08;代理构造#xff09;1. What is delegating constructor? (什么是代理构造/委托构造)2. Avoiding recursive calls of target constructors (避免递归调用目标ctor)3. 委托构造的好处2、不可变对象和类1、如何让类成为“不可变类”… 目录1、Delegation Constructor代理构造1. What is delegating constructor? (什么是代理构造/委托构造)2. Avoiding recursive calls of target constructors (避免递归调用目标ctor)3. 委托构造的好处2、不可变对象和类1、如何让类成为“不可变类”2、特殊情况指针成员3、例子4、不可变对象的“不可变”特征在软件开发中有什么用 它和thread-safe有什么关系3、不可变对象和类1、声明或定义静态成员2、静态成员3、实例成员和静态成员4、C 中static的作用 1、Delegation Constructor代理构造 1. What is delegating constructor? (什么是代理构造/委托构造) 代理构造一个构造函数可以调用另外的构造函数 在代理构造的时候被委托的要放在委托的构造函数的初始化列表的位置不能放在在括号里面。 class A{ public: A(): A(0){}A(int i): A(i, 0){}A(int i, int j) {num1i;num2j;average(num1num2)/2;} private:int num1;int num2;int average; };上面例子中构造函数的调用次序: A() -A(int) -A(int, int) 在这个过程中形成了所谓的委托构造量我们最怕的就是出现环形的委托构造。 2. Avoiding recursive calls of target constructors (避免递归调用目标ctor) 递归调用函数调用其本身 递归调用实际上就是环形调用。 class A{ public: A(): A(0){}A(int i): A(i, 0){}A(int i, int j): A(){} private:int num1;int num2;int average; };调用次序: A() - A(int) -A(int, int) -A() 3. 委托构造的好处 让程序员少写代码使逻辑更加清晰。 执行程序时 会先执行 一个参数的构造函数 然后再执行两个参数的构造函数。 大大减少了代码量。 2、不可变对象和类 不可变对象对象创建后其内容不可改变除非通过成员拷贝 不可变类不可变对象所属的类 1、如何让类成为“不可变类” 1、所有数据域均设置为“私有”属性 2、没有更改器函数 3、也没有能够返回可变数据域对象的引用或指针的访问器 如下 2、特殊情况指针成员 如果只有下面两个条件是构成不了不可变类的。 1、所有数据域均设置为“私有”属性 2、没有更改器函数 如果getter函数返回指向成员的指针或者getter函数返回成员的引用。那么通过getter函数也能够修改类成员。 如下指针指向了类的私有成员然后我们修改对象的私有数据成员让对象不成为不可变类。 所以才要加入第三个条件没有能够返回可变数据域对象的引用或指针的访问器 3、例子 #includeiostream #includestring using namespace std;class Date { private:int year 2019, month 1, day 1; public:int getYear() { return year; }int getMonth() { return month; }int getDay() { return day; }void setYear(int y) { year y; }void setMonth(int m) { month m; }void setDay(int d) { day d; }Date() default;Date(int y, int m, int d) :year(y), month(m), day(d) {}std::string toString() {return (std::to_string(year) - std::to_string(month) - std::to_string(day));} };enum class Gender {male,female, };class Employee { private:std::string name;Gender gender;Date birthday; public:void setName(std::string name) { this-name name; }void setGender(Gender gender) { this-gender gender; }void setBirthday(Date birthday) { this-birthday birthday; }std::string getName() { return name; }Gender getGender() { return gender; }Date* getBirthday() { return birthday; }std::string toString(){return (name ( (gender Gender::male ? std::string( male ) : std::string( female ) ) birthday.toString()));}//带参构造函数Employee(std::string name,Gender gender,Date birthday):name{name},gender{gender},birthday{birthday}{}//默认构造函数Employee():Employee(Alan,Gender::male,Date(2000,4,1)){} };//创建Employee对象然后修改其生日 int main() {Employee e;//1:settere.setBirthday(Date(1999,1,1));std::cout e.toString() std::endl;//2:gettere.getBirthday()-setYear(1998);std::cout e.toString() std::endl;return 0; }4、不可变对象的“不可变”特征在软件开发中有什么用 它和thread-safe有什么关系 将一些需要共享和协同开发的内容设为不可变对象可以防止内容被他人修改。起到类似const的作用。 详细可以观看这篇文章 线程安全ThreadSafe 3、不可变对象和类 1、声明或定义静态成员 在类定义中关键字 static 声明 不绑定到类实例的成员( 该成员无需创建实例化对象即可访问可以直接用类去访问)在类的内部声明 静态成员的定义是很复杂的。 静态数据成员定义的规则 (1) 声明为“constexpr”类型的静态数据成员必须 在类中声明 并初始化。自C17 起可不在类外定义 (2) 声明为“inline”(C17 起) 或者 “const int” 类型的静态数据成员可以 在类中声明 并初始化 (3) 其它须在类外 定义并初始化且不带static 关键字 静态数据成员的定义规则复杂在类外定义大部分情况下不会出错 2、静态成员 静态数据成员具有静态存储期(static storage duration)或者C11线程存储期特性。 静态存储期 对象的存储在程序开始时分配而在程序结束时解回收。 (1) Only one instance of the object exists ( 只存在对象的一个实例) (2) 静态存储器对象未明确初始化时会被自动“零初始化(Zero-Initialization)” 3、实例成员和静态成员 一旦实例化了Square创建了Square的对象每个对象中都有各自的side成员。这个side成员就叫做实例成员。 而numberOfObjects只存在一个是由所有的Square对象共享的叫做静态成员。 class Square { private:double side;static int numberOfObjects;// ... public://代理构造无参构造函数调用有参构造函数Square():Square(1.0){}Square(double side){this-side side;numberOfObjects;}// ... }; //定义静态数据成员会被零初始化 int Square::numberOfObjects; int main() {Square s1{}, s2{5.0}; }调用一次构造函数numberOfObjects就会1所以numberOfObjects可以统计成员数量 4、C 中static的作用 c语言中static关键字用法详解
http://www.zqtcl.cn/news/358064/

相关文章:

  • 江华网站建设企业传统的网络营销推广方法
  • 网站开发与推广新网站开发工作总结
  • 永修县建设局网站长沙网站关键词优化
  • 厦门建站服务低代码开发会废了程序员吗
  • 安阳汤阴县网站建设下载wix做的网站
  • 福清市建设局网站深圳工业设计协会封昌红
  • 网站建设公司做网站要多少费用重庆找工作哪个网站好
  • 苏州网站建设方法cnzz网站排名是怎么做的
  • 烟台网站建设服务专业的企业智能建站制造厂家
  • 网站信息查询制作闹钟网站
  • 永久免费个人网站申请注册禁止 wordpress ajax
  • 建设网站江西一个简单的游戏网站建设
  • 织梦大气婚纱影楼网站源码优化大师电脑版
  • 衡水企业网站制作报价怎么通过局域网建设网站
  • 服装网站建设课程知道ip怎么查域名
  • 上海政务网站建设上行10m企业光纤做网站
  • 杭州做公司网站aso搜索优化
  • 南京越城建设集团网站网站空间续费多少钱
  • 深圳nft网站开发公司如何制作微信公众号里的小程序
  • 做网站美工要学什么聊城网站建设电话
  • 南通个人网站建设快手秒刷自助网站
  • html5 做网站网站开发找工作
  • 聚成网站建设艺术公司网站定制中心
  • 阿里云上可以做网站吗十六局集团门户网
  • 门户网站建设询价函有哪些网站可以做设计挣钱
  • 如何建立自己网站奔奔网站建设
  • 自由做图网站做网站所用的工具
  • 广西南宁做网站专业网站建设案例
  • 视屏网站的审核是怎么做的群辉 搭建wordpress
  • 嘉兴网站快速排名优化衡阳网站建设制作