Figure 2-1. class Nullable
namespace Oracle
{
class Nullable
{
public:
// constructors/destructor
Nullable();
virtual ~Nullable() {};
// implementors
void set_null();
// accessors
virtual bool is_null() const;
virtual sb2 indicator() const;
virtual string str() const;
virtual string str(const string&) const;
virtual string str(const string&, const Format&) const;
virtual string sql_str() const;
virtual long lng() const;
virtual long lng(const long) const;
virtual double dbl() const;
virtual double dbl(const double) const;
virtual int sqlt() const;
virtual int maxsize() const;
protected:
// implementors
virtual void* data() const;
virtual sb2* ind_addr();
friend class Stmt;
friend class Select_Stmt;
};
ostream& operator<<(ostream&, const Nullable&);
}The constructor takes no arguments since a Nullable object cannot take a value.