Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [C++] BorlandCBuilder5 - curiosità ...

    Ciao a tutti,

    una curiosità da sottoporvi:
    uso bcb5 per sviluppare la mia applicazione e durante la compilazione mi trovo una marea di warning: W8057 Parameter Sender is never used

    Ora mi chiedo come mai bcb5 mi visualizza quel warning e non mi da la possibilità di eliminare il parametro Sender di tipo TObject* dai parametri passati alla funzione se effettivamente nella funzione non lo uso.

    Quindi ricapitolando: bcb5 mi mette il warning, allora io lo elimino nella definizione e nella dichiarazione del metodo dell'oggetto ma bcb5 si arrabbia.

    come mai?

    many tnx

    RiKkArDo on IRCnet

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,295
    I metodi che contengono un parametro Sender sono molto probabilmente risposte ad eventi in cui tale parametro restituisce il riferimento all'oggetto che ha scatenato l'evento, pertanto non può essere eliminato in quanto così il prototipo del metodo viene modificato.

    Mi pare comunque strano che ti segnali un warning sul parametro.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3

    Re: [C++] BorlandCBuilder5 - curiosità ...

    Originariamente inviato da rikkardo
    ...
    una curiosità da sottoporvi:
    uso bcb5 per sviluppare la mia applicazione e durante la compilazione mi trovo una marea di warning: W8057 Parameter Sender is never used

    Ora mi chiedo come mai bcb5 mi visualizza quel warning e non mi da la possibilità di eliminare il parametro Sender di tipo TObject* dai parametri passati alla funzione se effettivamente nella funzione non lo uso.

    Quindi ricapitolando: bcb5 mi mette il warning, allora io lo elimino nella definizione e nella dichiarazione del metodo dell'oggetto ma bcb5 si arrabbia.
    ...
    Puoi mostrare alcune di queste righe di codice ?
    01010011 01100001 01101101 01110101 01100101 01101100 01100101 01011111 00110111 00110000
    All errors are undocumented features waiting to be discovered.

  4. #4
    codice:
    void __fastcall TmulticfgEd::DisplayTimerTimer(TObject *Sender)
    {
       NeedSavePanel->Color=CFGBOX.Modified?clYellow:clGreen;
    }
    eccole
    RiKkArDo on IRCnet

  5. #5
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,295
    Originariamente inviato da rikkardo
    eccole
    E' uno dei metodi preposto alla gestione di un evento, generato automaticamente facendo doppio clic sul componente TTimer (nel caso specifico in esame).

    Evidentemente, pur essendo un metodo impiegato in un contesto in cui non esiste una gravità nell'ignorare il parametro Sender, anzi si tratta della maggior parte dei casi, il compilatore provvede comunque a mostrare un warning.

    Come dicevo prima, mi sembra molto strano in quanto Delphi, basato sulla stessa libreria, ha un compilatore analogo che però si limita generalmente a segnalare warning per variabili non utilizzate, senza riferirsi mai ai parametri, proprio in virtù di quanto detto.

    Tutt'al più, se ti infastidisce eccessivamente, puoi disabilitare il warning dalle opzioni di progetto.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  6. #6
    grazie per il consiglio, ma che ne dici di bypassare il problema inserendo una riga di codice del tipo:
    codice:
    Sender=Sender; //unused
    ??
    RiKkArDo on IRCnet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.