Poniższy kod nie zostanie skompilowany. Czemu?Niemożliwe: ten wskaźnik jest domyślnym argumentem. Czemu?
Edytuj, dla jasności. To właśnie próbowałem zrobić, używając mniej linii kodu ...
class A
{
void f(int i){};
void f();
int j;
};
void A::f()
{
f(j);
}
Co jeszcze próbujesz zrobić? –
Ponieważ instancja nie znajduje się w zasięgu wewnątrz deklaracji argumentu ...? –
"... Wyrażenie może łączyć funkcje widoczne w bieżącym zakresie, wyrażeniach stałych i zmiennych globalnych Wyrażenie nie może zawierać zmiennych lokalnych ani niestatycznych zmiennych z podziałem na klasy ..." –