suraty
پنج شنبه 05 آبان 1390, 22:37 عصر
سلام
تو کتاب آقای جعفر نژاد قمی این مطلب رو برای توابع از نوع استاتیک نوشته بود.
توابع عضو کلاس را نیز می توان به صورت استاتیک تعریف کرد. ولی محدودیت هایی در این خصوص وجود دارد. آنها فقط مستقیما می توانند به سایر اعضای استاتیک کلاس مراجعه کنند.(البته این توابع می توانند به داده ها و توابع عمومی دسترسی داشته باشند.)
اونچه که داخل پرانتز هست رو من به صورت زیر برداشت کردم و برنامه ی زیر رو نوشتم. اما تابع عمومی show شناخته شده نبود.
#include"iostream.h"
#include"conio.h"
class class1{
static int a;
public:
static void fun(int n){
a=n;
show();
}
void show(){
cout<<a;
}
};
int class1::a;
int main(){
class1 ob;
ob.fun(3);
class1::fun(7);
ob.fun(5);
return 0;
}
تو کتاب آقای جعفر نژاد قمی این مطلب رو برای توابع از نوع استاتیک نوشته بود.
توابع عضو کلاس را نیز می توان به صورت استاتیک تعریف کرد. ولی محدودیت هایی در این خصوص وجود دارد. آنها فقط مستقیما می توانند به سایر اعضای استاتیک کلاس مراجعه کنند.(البته این توابع می توانند به داده ها و توابع عمومی دسترسی داشته باشند.)
اونچه که داخل پرانتز هست رو من به صورت زیر برداشت کردم و برنامه ی زیر رو نوشتم. اما تابع عمومی show شناخته شده نبود.
#include"iostream.h"
#include"conio.h"
class class1{
static int a;
public:
static void fun(int n){
a=n;
show();
}
void show(){
cout<<a;
}
};
int class1::a;
int main(){
class1 ob;
ob.fun(3);
class1::fun(7);
ob.fun(5);
return 0;
}