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

[C++] Wskaźniki

Ostatnio zmodyfikowano 2013-10-11 11:18
Autor Wiadomość
Grunthor
Temat założony przez niniejszego użytkownika
[C++] Wskaźniki
» 2013-10-10 11:51:44
Chciałbym zoptymalizować wielkość swojego małego programu, aby był czytelniejszy.
C/C++
RownanieKwadratowe * wdelta;
wdelta = new RownanieKwadratowe;
RownanieKwadratowe r1( A, B, C );
p.delta( p.getA(), p.getB(), p.getC() );
* wdelta = & p.delta( p.getA(), p.getB(), p.getC() );

Chciałbym żeby wskaźnik wskazywał na wartość obliczaną przez funkcję składową delta() gdyż po obliczeniu tej wartość uzywam całego wyrażenia p.delta(p.getA(),p.getB(),p.getC()) co strasznie "zaśmieca" kod.

Dodam, że funkcja składowa należy do klasy publicznej.
 

Poniżej log błedu z Visual Studio 2012

: error C2102: '&' requires l-value

Mam nadzieje, że sensowanie opisałem to o co mi chodzi.
Z góry dziękuje za odpowiedzi i wyrozumiałość.
P-93464
pekfos
» 2013-10-10 13:37:22
Po co podajesz do delta() zmienne, do których ta metoda i tak ma dostęp?
P-93470
Grunthor
Temat założony przez niniejszego użytkownika
» 2013-10-10 13:59:12
Dobra uwaga. Mój błąd.
Niestety nie jest to wciąż odpowiedź na pytanie. 
P-93473
pekfos
» 2013-10-10 14:19:40
Nie możesz tak użyć obiektu zwracanego (tymczasowego).
P-93475
Grunthor
Temat założony przez niniejszego użytkownika
» 2013-10-10 15:44:10
To znaczy, że musze najpierw obiekt zwracany przypisać do jakiejś zmiennej statycznej??
Bo załóżmy, że ja ten sam obiekt wywołuje kilka razy?? 
P-93476
pekfos
» 2013-10-10 18:59:53
A nie wystarczy przypisać zwróconej wartości do odpowiedniej zmiennej?
P-93488
Grunthor
Temat założony przez niniejszego użytkownika
» 2013-10-11 11:18:49
No właśnie chciałem to zrobić poprzez wskaźnik, ale uświadomileś mnie, że nie da się tego zrobić w ten sposób.
Temat zamknięty.
Dziękuje pekfos
P-93507
« 1 »
  Strona 1 z 1