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

新手建设什么网站好聊城优化seo

新手建设什么网站好,聊城优化seo,wordpress 粘贴板图片,内容营销案例C的目标之一是让使用类对象就像使用标准类型一样#xff0c;但是常规的初始化语法不适用于类似类型Stock#xff1a; int year 2001#xff1b; struct thing {char * pn;int m; }; thing amabob {wodget,-23}; //有效初始化 Stock hot {Sukies Autos…C的目标之一是让使用类对象就像使用标准类型一样但是常规的初始化语法不适用于类似类型Stock int year 2001 struct thing {char * pn;int m; }; thing amabob {wodget,-23}; //有效初始化 Stock hot {Sukies Autos,Inc.,200,50.25}; //编译错误 不能像上面这样初始化Stock对象的原因在于数据部分的访问状态是私有的这意味着程序不能直接访问数据成员。程序只能通过成员函数来访问数据成员因此需要设计合理的成员函数才能成功地将对象初始化。 如果使数据成员成为公有而不是私有就可以按刚才介绍的方法初始化类对象但使数据成为公有的违背了类的一个主要初衷数据隐藏。 一般来说最好在创建对象时对它进行初始化。例如 Stock gift; gift.buy(10,24.75); 就Stock类当前的实现而言gift对象的company成员是没有值的。类设计假设用户在调用任何其他成员函数之前调用acquire()但无法强加这种假设。避开这种问题的方法之一是在创建对象时自动对它进行初始化。为此C提供了一个特殊的成员函数——类构造函数专门用于构造新对象将值赋给它们的数据成员。更准确地说C为这些成员函数提供了名称和使用语法而程序员需要提供方法定义。名称与类名相同。例如Stock类一个可能的构造函数是名为Stock()的成员函数。构造函数的原型和函数头有一个有趣的特征——虽然没有返回值但没有被声明为void类型。实际上构造函数没有声明类型。 构造函数通过成员函数为数据成员进行赋值。 声明和定义构造函数 现在需要创建Stock的构造函数。由于需要提供3个值因此为构造函数提供3个参数。第四个值total_val成员是根据shares和share_val计算得到的因此不必为构造函数停供这个值。此时程序员可能指向设置company成员而把其值设置为0这可以使用默认参数来完成所以函数的原型如下 Stock(const string co,long n 0,double pr 0.0); 第一个参数是指向字符串的指针该字符串用于初始化成员company。n和pr参数为shares和share_val成员提供值。Tips没有返回类型。原型位于类声明的公有部分。 Stock::Stock(const std::string co,long n,double pr) {company co;if(n0){std::coutNumer of shares cant be negative;companyshares set to be 0.std::endl;}else {shares n;}share_val pr;set_tot(); } 上述代码和前面所说的函数acquire()相同。区别在于程序声明对象时将自动调用构造函数。 void Stock::acquire(const std::string co,long n,double pr) {company co;if(n0){std::coutNumer of shares cant be negative;companyshares set to be 0.std::endl;}else {shares n;}share_val pr;set_tot(); } 成员名和参数名 不要把参数名和类成员相同否则最终写出的代码将是这样的 sharesshares; 为了避免这种情况有两种方法一种是在数据成员名中使用m_前缀 string m_company; 还有一种方法是在成员名中使用后缀_ string company_; 使用构造函数 C提供了两种使用构造函数来初始化对象的方式。 第一种显式地调用构造函数 Stock food Stock(World Cabbage,250,1.25); 这将food对象的company成员设置为字符串“World Cabbage”,将shares成员设置为250以此类推。 第二种隐式地调用构造函数 Stock garment(Furry Mason,50,2.5); 这种格式更紧凑它与下面的相似调用等价 Stock garment Stock(Furry Mason,50,2.5); 每次创建类对象甚至使用new动态分配内存时C都使用类构造函数。下面是将构造函数与new一起使用的方法 Stock *pstock new Stock(Electroshock Games,18,19.0); 这条语句创建一个Stock对象将其初始化为参数提供的值并将该对象的地址赋给pstock指针。在这种情况下对象没有名称但可以使用指针来管理该对象。 构造函数的使用方式不同于其他类方法。一般来说使用对象来调用方式 stock1.show(); 但是无法使用对象来调用构造函数因为在构造函数构造处对象之前对象是不存在的因此构造函数被用来创建对象而不能通过对象来调用。 默认构造函数 默认构造函数是在未提供显式初始值时用来创建对象的构造函数。例如 Stock fluffy_the_cat; 如果没有提供任何构造函数则C将自动提供默认构造函数。它是默认构造函数的隐式版本不做任何工作对于Stock来说默认构造函数可能如下 Stock::Stock(){} 因此将创建fluffy_the_cat对象但不初始化其成员这和下面的语句创建x但是没有提供值给它一样 int x; 默认构造函数没有参数因为声明不包含值。 当且仅当没有定义任何构造函数时编译器才会提供默认构造函数。为类定义了构造函数后程序员必须为它提供默认构造函数。如果提供了非默认构造函数但是没有提供默认构造函数则会出错。 这样做的原因可能是想禁止创建未初始化的对象。然而如果要创建对象而不显式地初始化则必须定义一个不接受任何参数的默认构造函数。 定义默认构造函数的方式有两种。一种是给已有构造函数的所有参数提供默认值。 另一种是通过函数重载来定义另一个构造函数——一个没有任何参数的构造函数。 因为只能有一个默认构造函数因此不要同时采用这两种方式。建议初始化所有对象确保所有成员一开始就有已知的合理值。例如 Stock::Stock() {company no name;shares 0;share_val 0.0;total_val 0.0; }
http://www.hkea.cn/news/14416668/

相关文章:

  • jsp网站建设代码做网站_你的出路在哪里
  • 学做美食饮品网站玉林市网站开发公司电话
  • 我有域名和服务器找人建设网站城市焦点商城网站建设案例
  • angular2做的网站有手机如何制作表格
  • 贵港购物网站开发设计一个企业网站需要多少钱
  • 品牌网站方案高端网站建设青岛
  • 免费做一建或二建题目的网站口碑好的合肥网站建设
  • 南康区城乡规划建设局网站有没有专业做咖啡店设计的网站
  • 类似链家网站建设方案东莞加工厂外发网
  • 企业门户网站源码长春电商网站建设哪家专业
  • 成都专业网站推广为什么要做响应式网站
  • 鄂州网站建设报价国外建设工程网站
  • 做保洁网站找谁做seo自然排名优化
  • 怎么注册一个属于自己的网站妇科医院网站建设怎么做
  • 房产网手机版网站建设目标WordPress简体中文设置教程
  • 怎样建设微网站企业网站的建立特点是什么
  • html5响应式网站建设深圳头条新闻
  • 视觉上体验的网站做网站用虚拟主机还是用服务器
  • 河南省住建厅网站官网wordpress多用户评论
  • 著名设计案例网站互动网门户网站建设
  • 网站中搜索栏怎么做的铁法能源公司网站
  • 群晖个人网站建设网站关键字 怎么设置
  • 关于网站建设的合同范本搜索引擎优化指的是
  • 网站开发的时间流程南宁seo诊断
  • 哪个云服务器便宜又好青岛网站优化联系方式
  • 哪里有做网站的平台wordpress搜索优化
  • wordpress优秀网站一个做搞笑类视频的网站取名
  • 网站前台的模块由担路网提供网站建设
  • 数据线厂家东莞网站建设祁东网站建设
  • 做ppt常用的网站网站开发有前途么