وبلاگ من

تعریف متغییر static در یک کلاس

دوشنبه, ۱۲ تیر ۱۳۹۶، ۱۱:۱۲ ق.ظ

شکل کلی تعریف یک متغییر استاتیک در کلاس به این صورت است:

class test
{
static int x;
};
int test::x=0; 

همان طور که مشخص است تعریف متغییر در بدنه کلاس انجام می شود اما مقدار دهی آن خارج از کلاس


برای مثال اگر بخواهیم تعداد متغییر ها ی تعریف شده از کلاس test را داشته باشیم باید یک متغییر int از نوع static تعریف کرده ، هر بار در تابع سازنده (جایی که یک شی از کلاس هنگام تعریف در آنجا مقدار دهی می شود) رفته و به مقدار x یکی اضافه کنیم :

#include <iostream>
using namespace std;
class test
{
public:
test() //contractor
{
x++;
cout<<x<<endl;
}

static int x;

void PrintX() {cout<<x<<endl;}
};
int test::x=0; 
int main(int argc, char** argv) {

test A,B;

return 0;
}



  • مرتضی رحیم زاده

نظرات (۰)

هیچ نظری هنوز ثبت نشده است
ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی