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

    (visual c++ 6) passaggio parametri a un metodo

    ho una classe ClCalcolo con un metodo pubblico:

    codice:
    bool ClCalcolo::EquazioneSecondoGrado(double a,double b, double c, double* ris1, double* ris2)
    che da false se delta è minore di 0, senò restituisce i due risultati nelle variabili puntate da ris1 e ris2


    però ho un'altra classe al madre di questa che mi bypassa i dati, ma la funzione chiamata è sempre uguale, vi scrivo la parte di codice importante:

    codice:
    bool CTestDllApp::EquazioneSecondoGrado(double a, double b, double c, double *ris1, double *ris2){
    	ClCalcolo mycl;
    
            ................
            ................
    
    	return mycl.EquazioneSecondoGrado(a, b,  c,  &ris1,  &ris2);
    }
    in pratica prendo i due puntatori e li passo come indirizzo alla sottofunzione...


    solo che mi da il seguente errore:

    codice:
    error C2664: 'EquazioneSecondoGrado' : cannot convert parameter 4 from 'double ** ' to 'double *'
            Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast

    che fare?

  2. #2
    Utente di HTML.it L'avatar di anx721
    Registrato dal
    Apr 2003
    Messaggi
    2,352
    Devi scrivere:

    return mycl.EquazioneSecondoGrado(a, b, c, ris1, ris2);


    perche è vero che EquazioneSecondoGrado vuole un puntatore a double, ma ris1 è gia esso stesso un puntatore quindi non devi usare l'operatore & per ottenerne il puntatore, perche cosi facendo, come ti segnalava il compilatore, ottieni un puntatore a puntatore, e lo stesso vale per ris2


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 © 2025 vBulletin Solutions, Inc. All rights reserved.