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

总工会网站建设方案做淘宝网店需要多少钱

总工会网站建设方案,做淘宝网店需要多少钱,浅蓝色.net企业网站源码带后台,百度指数查询官网大数据链接 1. 教程 可以使用 static 关键字来把类成员定义为静态的。当我们声明类的成员为静态时,这意味着无论创建多少个类的对象,静态成员都只有一个副本。 静态成员在类的所有对象中是共享的。如果不存在其他的初始化语句,在创建第一个对象时…

链接

1. 教程

可以使用 static 关键字来把类成员定义为静态的。当我们声明类的成员为静态时,这意味着无论创建多少个类的对象,静态成员都只有一个副本。
在这里插入图片描述
静态成员在类的所有对象中是共享的。如果不存在其他的初始化语句,在创建第一个对象时,所有的静态数据都会被初始化为零。我们不能把静态成员的初始化放置在类的定义中,但是可以在类的外部通过使用范围解析运算符 :: 来重新声明静态变量从而对它进行初始化,如下面的实例所示。

下面的实例有助于更好地理解静态成员数据的概念:

#include <iostream>using namespace std;class Box
{public:static int objectCount;// 构造函数定义Box(double l=2.0, double b=2.0, double h=2.0){cout <<"Constructor called." << endl;length = l;breadth = b;height = h;// 每次创建对象时增加 1objectCount++;}double Volume(){return length * breadth * height;}private:double length;     // 长度double breadth;    // 宽度double height;     // 高度
};// 初始化类 Box 的静态成员
int Box::objectCount = 0;int main(void)
{Box Box1(3.3, 1.2, 1.5);    // 声明 box1Box Box2(8.5, 6.0, 2.0);    // 声明 box2// 输出对象的总数cout << "Total objects: " << Box::objectCount << endl;return 0;
}

当上面的代码被编译和执行时,它会产生下列结果:

Constructor called.
Constructor called.
Total objects: 2

如果把函数成员声明为静态的,就可以把函数与类的任何特定对象独立开来。静态成员函数即使在类对象不存在的情况下也能被调用,静态函数只要使用类名加范围解析运算符 :: 就可以访问。

静态成员函数只能访问静态成员数据、其他静态成员函数和类外部的其他函数。

静态成员函数有一个类范围,他们不能访问类的 this 指针。您可以使用静态成员函数来判断类的某些对象是否已被创建。

静态成员函数与普通成员函数的区别:

  • 静态成员函数没有 this 指针,只能访问静态成员(包括静态成员变量和静态成员函数)。
  • 普通成员函数有 this 指针,可以访问类中的任意成员;而静态成员函数没有 this 指针。

下面的实例有助于更好地理解静态成员函数的概念:

#include <iostream>using namespace std;class Box
{public:static int objectCount;// 构造函数定义Box(double l=2.0, double b=2.0, double h=2.0){cout <<"Constructor called." << endl;length = l;breadth = b;height = h;// 每次创建对象时增加 1objectCount++;}double Volume(){return length * breadth * height;}static int getCount(){return objectCount;}private:double length;     // 长度double breadth;    // 宽度double height;     // 高度
};// 初始化类 Box 的静态成员
int Box::objectCount = 0;int main(void)
{// 在创建对象之前输出对象的总数cout << "Inital Stage Count: " << Box::getCount() << endl;Box Box1(3.3, 1.2, 1.5);    // 声明 box1Box Box2(8.5, 6.0, 2.0);    // 声明 box2// 在创建对象之后输出对象的总数cout << "Final Stage Count: " << Box::getCount() << endl;return 0;
}

当上面的代码被编译和执行时,它会产生下列结果:

Inital Stage Count: 0
Constructor called.
Constructor called.
Final Stage Count: 2

2. 精选评论

2.1 评论一

可以使用静态成员变量清楚了解构造与析构函数的调用情况。

#include <iostream>
using namespace std;class Cpoint{public:static int value;static int num;Cpoint(int x,int y){xp=x;yp=y;value++;cout << "调用构造:" << value << endl;}~Cpoint(){num++; cout << "调用析构:" << num << endl;}private:int xp,yp;
};int Cpoint::value=0;
int Cpoint::num=0;
class CRect{public:CRect(int x1,int x2):mpt1(x1,x2),mpt2(x1,x2) {cout << "调用构造\n";}~CRect(){cout << "调用析构\n";}private:Cpoint mpt1,mpt2;
};int main()
{CRect p(10,20);cout << "Hello, world!" << endl;return 0;
}

运行结果:

调用构造:1
调用构造:2
调用构造
Hello, world!
调用析构
调用析构:1
调用析构:2

2.2 评论二

对类中静态变量的初始化始终令人迷惑不解。在这总结分享一下。

类中特殊成员变量的初始化问题:

  • 常量变量:必须通过构造函数参数列表进行初始化。
  • 引用变量:必须通过构造函数参数列表进行初始化。
  • 普通静态变量:要在类外通过"::"初始化。
  • 静态整型常量:可以直接在定义的时候初始化。
  • 静态非整型常量:不能直接在定义的时候初始化。要在类外通过"::"初始化。
http://www.yayakq.cn/news/667878/

相关文章:

  • 做维修家具广告在哪个网站好网站推广都做什么内容
  • 有趣的网站有哪些推荐网站上怎么做动画广告视频下载
  • 厦门建设局网站中标结果查询做下载网站赚钱
  • 网站及微站建设合同微信微网站开发百度云
  • 做最便宜的网站建设工程公司注册需要什么
  • 幼儿网站源代码做网站 用 显示器
  • 昆明做网站建设技巧公司百度网站排名提升工具
  • 平台网站做等级保护测评本周的新闻大事10条
  • 网络推广平台有哪些公司站长工具的使用seo综合查询运营
  • 门户网站开发设计报告邢台集团网站建设报价
  • 网站建设首先要学会什么三种常见的网络营销方式
  • 网站根目录是哪里青岛网站建设方案案例
  • 如何搭建一个属于自己的网站wordpress高仿主题下载
  • 江苏网站备案流程图平台设计思路
  • 360网站推广官网球阀江门市住房和城乡建设局网站
  • 莆田网站建设技术托管公司要建个网站
  • 网站空间一年多少钱软件外包公司能去吗
  • 查询网网站网站设计计划书模板
  • php网站登录系统怎么做wordpress 媒体库多选
  • 欧莱雅官方网站的建设柬埔寨做网站网站在那边违反吗
  • 普洱网站建设网站开发工资一般多少钱
  • 德州俱乐部网站开发桂林象鼻山成因
  • 定制专业网站腾讯企业邮箱怎么申请
  • 共享空间网站开发公司win7优化大师下载
  • wordpress推广网站插件所有的购物平台大全
  • 绵阳网站建设报价专注wordpress开发
  • 网站开发与数据库有关系吗3g门户网站
  • 全国新农村建设中心网站小型企业网站建设模板
  • python+视频播放网站开发WordPress交互式网站
  • 山东建大建设有限公司网站南通市住房和建设局网站