variablen zugriff c++

Gast #6430766
Lesenswert?

Hi Leute,
ich hab das bis her noch nicht gehabt, deswegen mal die Frage.
Wieso kann auf die in Data() enthaltene Variable _param.Data().Temp so 
zugegriffen werden?
1
template<typename EepromDatenT>
2
EepromDatenT & ParameterManager<EepromDatenT>::Data()
3
{
4
  return mEepromDatenContainer.Data();
5
}
6
...
7
//obj.funk().var
8
_param.Data().Temp  //Wieso funktioniert das? unter welchen Schlagwörtern kann ich suchen?
Gast #6430795
Lesenswert?

Ich kann aus deine kurzen Beschreibung nicht wirklich ableiten, was 
genau du nicht verstehst.
Verstehst du was passiert, wenn statt
1
_param.Data().Temp;
so aussehen würde:
1
const EepromDatenT& daten = _param.Data();
2
daten.Temp;
#6430829
Lesenswert?

Hans schrieb:
> /obj.funk().var
> _param.Data().Temp  //Wieso funktioniert das? unter welchen
> Schlagwörtern kann ich suchen?

Die Funtion _param.Data() liefert einen Zeiger auf eine Struktur zurück.
mit .Temp kannauf das Member Temp zugegriffen werden.

Suche: c funktion struktur zurückgeben

Beispiel :

https://riptutorial.com/de/c/example/24193/beispiel-fur-eine-funktion--die-eine-struktur-zuruckgibt--die-werte-mit-fehlercodes-enthalt
Beitrag #6431060 wurde von einem Moderator gelöscht.
#6432010
Lesenswert?

Rolf M. schrieb:
> Hans schrieb:
> Wieso kann auf die in Data() enthaltene Variable _param.Data().Temp so
> zugegriffen werden?
>
> Warum sollte es denn nicht gehen?
>
> unter welchen Schlagwörtern kann ich suchen?
>
> Hmm, Element-Zugriff?
1
struct XY {
2
    int x;
3
    int y;
4
};
5

6
XY getxy(void);
7

8
//  lange Vaiante
9

10
XY xy;
11
int x,y;
12

13
xy = getxy();
14
x = xy.x
15
y = xy.y
16

17
// kurze Variante
18

19
int x,y;
20

21
x = getxy().x;
22
y = getxy().y;

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren