From: Warren Young Date: February 25 2009 6:14pm Subject: Re: Newbie Row question List-Archive: http://lists.mysql.com/plusplus/8410 Message-Id: <49A58A7F.4010304@etr-usa.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit Sebastián Salazar Molina. wrote: > but when I change out to int, it compile fine, when I > use string, i can't compile: That's because Row::operator[] returns mysqlpp::String, which knows how to convert itself to an int, but not to std::string. Without a direct conversion, your compiler is having to choose among the const char* and char conversions, and doesn't understand that the first is clearly the right one. One way to fix it: String field = actual[f]; return string(field.data()); Another way would be to add a std::string conversion operator to lib/mystring.h, try it, and report back. If it works and doesn't cause problems, I'll add it to the next version of MySQL++.