Otrzymanie referencji wywołujac konstruktor

0

Witam,
czasami chciałoby się w locie przekazać nową referencje zmiennej jako argument funkcji np. dla
void wykonajMnie(MyClass & refc);

wywołać:

wykonajMnie( MyClass(zmienna1,zmienna2) );

//zamiast
MyClass temp(zmienna1,zmienna2) ;
// i dopiero
wykonajMnie( temp);

niektóre biblioteki pozwalają na taki styl.
Jak na razie nie moge znaleźć sposobu na zaimplementowanie takiego zachowania.
Czy ktoś z was już sobie tym ułatwiał życie?

0

Obiekty tymczasowe są generowane automatycznie dla const-referencji.

Poza tym tamten zapis możesz skrócić, wykonajMnie(MyClass(zmienna1, zmienna2)).

0

Albo jestem slepy, albo zapis ktory mu podpowiadasz jest dokladnie taki, jaki autor sobie wymarzyl :)

Autorze:

  1. kompilator musi to obslugiwac (czytaj: musi byc w miare zgodny z std)
  2. jak ... powiedzial, sygnatura Twojej funkcji powinna brzmiec: void wykonajMnie(MyClass const & refc);

edit: To nie ficzer bibliotek, tylko samego języka, stąd punkt (1). Wydaje Ci sie, ze bibliotek, poniewaz one wlasnie o'const'owaly swoje parametry poprawnie!

1 użytkowników online, w tym zalogowanych: 0, gości: 1