On Fri, Apr 23, 2010 at 11:57 AM, Brian Aker <[email protected]> wrote: > Hi! > > This ties into a bigger question of how to return error/information from > callers. Stewart and I spent a bit of time talking about this at the > conference (though with no conclusion). The basic idea is to return an object > that is minimal copy upon return (aka... no memory allocation and the hit > cost is low).
Which is precisely why I proposed using std::pair<>'s (or boost::tuple). There is no copy overhead in most situations (due to all modern compilers implementing the return value optimization. Please see: http://en.wikipedia.org/wiki/Return_value_optimization). This is the reason that the STL's std::map<>::insert() method returns a std::pair<iterator, bool> as do other STL algorithms. > I wouldn't get wrapped up too much in the current design of it. I'm really not sure what the above means. Could you explain? -jay > Cheers, > -Brian > > On Apr 23, 2010, at 8:09 AM, Jay Pipes wrote: > >> Cursor::InsertRecordResult result= cursor->insertRecord(table[0]); >> >> if (result.first == 0) /* successful result */ >> { >> inserted_rows= result.second.first; >> replaced_rows= result.second.second; >> } >> >> Thoughts? > > _______________________________________________ Mailing list: https://launchpad.net/~drizzle-discuss Post to : [email protected] Unsubscribe : https://launchpad.net/~drizzle-discuss More help : https://help.launchpad.net/ListHelp

