Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Odwolywanie sie poprzez metody do skladowych nie bedacych w danej klasie

Ostatnio zmodyfikowano 2012-11-21 17:36
Autor Wiadomość
diego997
Temat założony przez niniejszego użytkownika
Odwolywanie sie poprzez metody do skladowych nie bedacych w danej klasie
» 2012-11-21 15:16:57
Moglibyscie mi napisac jak zrealizowac cos takiego:

C/C++
Obiekt ObiektA;
ObiektA.getPosition().x;

Ale chcialbym zeby to dzialalo w taki sposob:

C/C++
Obiekt ObiektA;
ObiektA.//Kiedy wpisze ObiektA. visual wyswietli mi tylko metode getPosition() BEZ skladowej x

ObiektA.getPosition().//Kiedy wpisze w taki sposob visual wyswietli mi skladowa x


CHcialbym miedzy innymi wiedziec jak to moglo zostac zrealizowane w sfmlu, a niestety nie wiem jak zobaczyc definicje metod.
P-69645
m4tx
» 2012-11-21 15:36:40
Zrób sobie strukturę ze zmienną
x
 i zwracaj obiekt tej struktury przez
getPosition()
 :)
P-69646
diego997
Temat założony przez niniejszego użytkownika
» 2012-11-21 16:59:30
Tylko ze jak tak zrobie to mozliwa bedzie taka operacja

C/C++
obiekt.struktura.x;

A ja wlasnie tego nie chce ;p

Da sie to jakos inaczej zrobic ?

P-69650
DejaVu
» 2012-11-21 17:03:43
Nie sądzę abyś poprawnie opisał swój problem. Jeżeli widzisz zmienną 'x' poprzez intellisense to znaczy, że jest ona zadeklarowana bezpośrednio w klasie.

/edit:
Poza tym w źródłach SFML 2.0 nie istnieje przypadek, który opisałeś (a przynajmniej go nie widzę).
P-69651
m4tx
» 2012-11-21 17:05:45
Tylko ze jak tak zrobie to mozliwa bedzie taka operacja

Na pewno? :)
C/C++
#include <iostream>

struct Urwal {
    float x, y;
};

class Dobre {
public:
    Urwal getPosition() {
        Urwal urwal;
        urwal.x = 1;
        urwal.y = 1;
        return urwal;
    }
};

int main() {
    Dobre dobre;
    std::cout << dobre.getPosition().x << std::endl;
   
    return 0;
}

m4tx@m4tx-EP35-DS4:~/Pulpit$ g++ -o urwal urwal.cpp
m4tx@m4tx-EP35-DS4:~/Pulpit$ ./urwal
1
P-69653
diego997
Temat założony przez niniejszego użytkownika
» 2012-11-21 17:17:52
@m4tx no ale w takim przypadku nie zapisuje sie nigdzie wartosc x ;p

@Dejavu

Teraz wyszukalem cos takiego jak sf::RectangleShape::m_position, ty lepiej wiesz czy to ma jakies powiazanie z tym o czym pisalem ;p ?
P-69654
m4tx
» 2012-11-21 17:19:26
@m4tx no ale w takim przypadku nie zapisuje sie nigdzie wartosc x ;p
No jak nie jak tak, przecież mój kod dobitnie pokazuje, że zapisuje się...
P-69655
DejaVu
» 2012-11-21 17:22:58
Hm... no to przeczytałem jeszcze raz Twój pierwszy post :P
C/C++
class RectangleShape
    : public Shape
{
public:
    const Vector2f & getSize() const;
private:
    Vector2f m_size; ///< Size of the rectangle
};

const Vector2f & RectangleShape::getSize() const
{
    return m_size;
}
P-69656
« 1 » 2
  Strona 1 z 2 Następna strona