网站建设实训致谢语,山东建设厅官方网站孙松青,金湖县城乡建设局网站,粉色做网站背景图片静态static#xff1a;静态数据和静态函数#xff0c;在内存中只有一份#xff0c;不会随着创建对象的数目的增加而增加 static数据#xff1a;比如银行的account类中#xff0c;账户名是普通数据#xff0c;100个对象会有100个账户名#xff0c;但利率都是相同的#…静态static静态数据和静态函数在内存中只有一份不会随着创建对象的数目的增加而增加 static数据比如银行的account类中账户名是普通数据100个对象会有100个账户名但利率都是相同的因此利率可以设置为static static函数static函数和其他一般成员函数相比static函数没有this指针因此它不能处理类中的一般数据只能处理static数据
static数据需要在类外面进行定义。 调用static函数的两种方式1通过object调用2通过class name调用
class Account {
public:
static double m_rate;//声明
static void set_rate(const double x) { m_rate x; }
};
double Account::m_rate 8.0;//定义
int main() {
Account::set_rate(5.0); //通过class name调用
Account a;
a.set_rate(7.0); //通过object调用
}单例模式的例子
class A {
public:
static A getInstance();
setup() { ... }
private:
A();
A(const A rhs);
...
};
A A::getInstance()
{
static A a;
return a;
}类模板templatetypename T 函数模板templateclass T