Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - overload dell'operatore static_cast
Forum - C/C++ - overload dell'operatore static_cast

Avatar
Thejuster (Admin)
Guru^2


Messaggi: 2305
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 20:01
Sabato, 12/01/2019
Come consigliatomi da DarkJuster ho tentato di fare un overload dell'operatore static_cast

ma ovviamente, (non ne dubitavo affato..) ci sono degli errori.


L'errore seguente è questo.

Codice sorgente - presumibilmente C/C++

  1. mappysaver.h:49: error: expected type-specifier before 'static_cast'
  2.  operator static_cast<MappySaver::Tile>() const;
  3.           ^



Non è che per caso devo costruire un template per definire un typename?
Ma non sono ancora arrivato a questi livelli.

Cioè non ho ancora studiato i template e non sò cosa fanno o a cosa servono.
Attualmente cerco di trasferire dati da una classe all'altra utilizzando static cast.

potrei ottenere lo stesso risultato facendo diversamente si, ma non è quello a cui punto.
Siccome è un progetto nato solo per scopo didattico, devo imparare, non a costeggiare il problema.



ho provato in due mondi.

1° A dichiarare l'operatore in fondo alla classe, ovvero dopo la struttura.
2° A dichiarare l'operatore all'interno della struttura.

ma l'errore è sempre uguale

ho dichiarato in questo modo

Codice sorgente - presumibilmente C/C++

  1. operator static_cast<MappySaver::Tile>() const;




https://mire.forumfree.it/ - Mire Engine
C# UI Designer
PM Quote
Avatar
TheDarkJuster (Member)
Guru^2


Messaggi: 1620
Iscritto: 27/09/2013

Segnala al moderatore
Postato alle 22:25
Sabato, 12/01/2019
class TipoPartenza {
   operator TipoDestinazione() const { ... }
}

TipoDestinazione r = static_cast<TipoDestinazione>(TipoDestinazione);

Il cast può anche essere fatto automaticamente, ma io lo esplicito sempre.

PM Quote