From: | Eugene Karpachov <jk(at)steel(dot)orel(dot)ru> |
---|---|
To: | pgsql-interfaces(at)postgresql(dot)org |
Subject: | Re: libpq++ updates |
Date: | 2000-05-26 04:57:11 |
Message-ID: | 20000526085711.A3380@steel.orel.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-interfaces |
Wed, May 24, 2000 at 04:54:05PM -0400, dagraz(at)mindspring(dot)com пишет:
> There are a couple of changes I would like to make to libpq++,
> but I thought I would write first to check
> a) add string overloads to the methods accepting char*'s
Are you mean somefun(const char *) --> somefun(string) or
somefun(const string &) ? It would be useful, with 'string' from STL.
But it will force class users to use STL :(.
>
> c) Move PgConnection::Connect and PgConnection::PgConnection()
> from the protected to the public interface.
>
> Any reasons why this would be undesirable?
The only reason is that: less public members is better. If you really need,
for example, PgConnection::Connect() in your program, you can derive
class from PgConnection or PgDatabase and use the protected member in derived
class methods. These protected members have almost no use for 'public users'.
> any thoughts will be appreciated,
Maybe some methods like ExecTuplesOk, ExecCommandOk should emit exceptions?
Something derived from standard class 'exception', like
#include <exception>
class PGerror : public exception
{
private:
string err; // or, maybe, 'const char *err' if you don't like STL
public:
PGerror(PgDatabase *db) : err(db->ErrorMessage()) {}
virtual const char *what() const { return err.c_str(); }
};
--
jk
From | Date | Subject | |
---|---|---|---|
Next Message | Max Khon | 2000-05-26 05:37:50 | Re: importing from other dbases |
Previous Message | Steffers | 2000-05-26 03:55:34 | Plpgsql functions and Variable Tablenames |