Ahoj,
potřebuji aby funkce za svého běhu změnila obsah property komponenty TChart. Jak předám funkci ukazatel nebo referenci na tuto property? jedná se konkrétně o Fmain->Chart1->LeftAxis->Minimum
hu
Ahoj,
potřebuji aby funkce za svého běhu změnila obsah property komponenty TChart. Jak předám funkci ukazatel nebo referenci na tuto property? jedná se konkrétně o Fmain->Chart1->LeftAxis->Minimum
hu
Lepší asi bude předat funkci Chart1 a až tam přistupovat k té property.
Páč používat odkazy na property by se ti asi nemuselo líbit
class X {
public:
int a;
void f(int b) {
cout << "The value of b is "<< b << endl;
}
};
int main() {
int X::*ptiptr = &X::a;
void (X::* ptfptr) (int) = &X::f;
X xobject;
xobject.*ptiptr = 10;
cout << "The value of pointer is " << xobject.*ptiptr << endl;
cout << "The value of property is " << xobject.a << endl;
(xobject.*ptfptr) (20);
}
Pokud by jsme ale zvolnili pravidla pointerů tak, aby nemusely vždy ukazovat na property tříd:
#include <iostream>
using namespace std;
class Y
{
public:
int o;
};
class X {
public:
int a;
Y objY;
void f(int b) {
cout << "The value of b is "<< b << endl;
}
};
template<class T>
void ok(T *p)
{
*p=88;
}
void ko(int *ptiptr)
{
*ptiptr=78;
}
int main() {
// declare pointer to data member
int X::*ptiptr = &X::a;
// declare a pointer to member function
void (X::* ptfptr) (int) = &X::f;
// create an object of class type X
X xobject;
int *lo = &xobject.a;
*lo=10;
cout << "The value of pointer is " << xobject.a << endl;
ok(&xobject.objY.o);
cout << "The value of pointer is " << xobject.objY.o << endl;
ko(&xobject.objY.o);
cout << "The value of pointer is " <<xobject.objY.o << endl;
// initialize data member
xobject.*ptiptr = 10;
cout << "The value of pointer is " << xobject.*ptiptr << endl;
cout << "The value of property is " << xobject.a << endl;
// call member function
(xobject.*ptfptr) (20);
}
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku