Ho una variabile vector<std::string>
. Ho bisogno di passarlo su un metodo che accetta char**
come parametro di input.convertire il vettore <string> in char ** C++
come fare questo? Se possibile, ho bisogno di passare uno scrivibile.
Update 1: In uno strumento per creare un metodo di servizio, io do parametri come std :: vector, ma imposta automaticamente la qualificazione come &, il che significa che la mia definizione di metodo generato dallo strumento sarà come:
std::string SvcImpl::myMethodname (const std::string par1, const std::vector< std::string >& par2, const std::vector<std::string>& par3)
{
}
Questo metodo viene chiamato automaticamente con i valori nel parametro passato. Ora da dentro questo metodo ho intenzione di chiamare un metodo in una DLL in una cartella lib che assomiglia a:
int method_to_be_called(char* par1, char ** par2, char ** par3, void* pRetValue);
per par1 -> che sto passando (char *) par1.c_str()
Ho bisogno di sapere come passare le variabili per par2 e par3 e per pRetValue. I valori per par2 e par3 sono disponibili in vettoriale ma l'ultimo parametro pRetValue è un parametro di output che ho bisogno di restituirlo come std :: string.
scusate se sono molto confuso o faccio domande molto semplici.
quindi l'operazione dovrebbe essere su '* writable', assumendo ** scrivibile accetta il tuo char ** param. –
Penso che sarà necessario produrre un nuovo 'std :: vector' per memorizzare gli indirizzi di tutti i dati della stringa. –
Galik
Che cosa fa esattamente questo metodo che si sta passando? – Wlerin