İşaretçileri ve başvuruları henüz çok iyi anlamıyorum, ancak ana ve diğer sınıflardan başvurulan statik yöntemler ve değişkenler içeren bir sınıfa sahibim. Bu sınıftaki bir değişkene statik işlevlerle geçmek istediğim main() öğesinde tanımlanmış bir değişkenim var. Bu işlevlerin main() kapsamındaki değişkenin değerini değiştirmesini istiyorum.C++ sınıfı statik işaretçi
//foo.h
class foo
{
public:
static int *myPtr; //its just a declaration, not a definition!
bool somfunction() {
*myPtr = 1;
//where is return statement?
}
}; //<------------- you also forgot the semicolon
/////////////////////////////////////////////////////////////////
//foo.cpp
#include "foo.h" //must include this!
int *foo::myPtr; //its a definition
:
Bu yapmak ne çalışıyorum bir örnektir, ama derleyici hataları olsun ...
class foo
{
public:
static int *myPtr;
bool somfunction() {
*myPtr = 1;
return true;
}
};
int main()
{
int flag = 0;
foo::myPtr = &flag;
return 0;
}
Kural olarak, derleyici hataları aldığınızda, _always_ bunları soruya ekleyin. –