ICheats Δημοσ. 17 Φεβρουαρίου 2014 Δημοσ. 17 Φεβρουαρίου 2014 Καλημερα!! Χρειαζομαι βοηθεια με το πως να μετατρεψω μια μεταβλητη pointer to pointer to string σε c-string.. Αυτο δηλαδη: const char *convert( string **imported ) { const char *cstr_imported = *imported -> c_str(); return cstr_imported; } αλλά έχω αυτό το σφάλμα: error: request for member 'c_str' in '* imported', which is of non-class type 'std::string*' Μήπως μπορείτε να με βοηθήσετε? Ευχαριστώ!
Timonkaipumpa Δημοσ. 17 Φεβρουαρίου 2014 Δημοσ. 17 Φεβρουαρίου 2014 Το error πάντως σου λέει πως το *imported ΔΕΝ ΕΙΝΑΙ string pointer. Κάνε debug και δες τι μεταβλητή είναι το **imported πριν το περάσεις μέσα στην function. Επίσης, γιατί std::string**; Reference δεν βολεύει;
migf1 Δημοσ. 17 Φεβρουαρίου 2014 Δημοσ. 17 Φεβρουαρίου 2014 Δοκίμασε να βάλεις παρενθέσεις στο *imported.... #include <iostream> const char *convert( std::string **imported ) { return (*imported)->c_str(); } int main( void ) { std::string s("Hello"), *ps = &s, **pps = &ps; std::cout << convert(pps) << std::endl; return 0; } /* Έξοδος: Hello */
ICheats Δημοσ. 17 Φεβρουαρίου 2014 Μέλος Δημοσ. 17 Φεβρουαρίου 2014 Αυτό ήταν το πρόβλημα! Ευχαριστώ πολύ! Το έλυσα! Δοκίμασε να βάλεις παρενθέσεις στο *imported.... #include <iostream> const char *convert( std::string **imported ) { return (*imported)->c_str(); } int main( void ) { std::string s("Hello"), *ps = &s, **pps = &ps; std::cout << convert(pps) << std::endl; return 0; } /* Έξοδος: Hello Το error πάντως σου λέει πως το *imported ΔΕΝ ΕΙΝΑΙ string pointer. Κάνε debug και δες τι μεταβλητή είναι το **imported πριν το περάσεις μέσα στην function. Επίσης, γιατί std::string**; Reference δεν βολεύει; Με reference δεν το προτιμώ.. Μου αρέσει περισσότερο η άλλη μέθοδος!! Ευχαριστώ πάντως!
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα