như WhozCraig đã đề xuất, bạn có thể thêm delete Driver;
vào chức năng kiểm tra của bạn nhưng tôi khuyên bạn nên sử dụng auto_ptr
hoặc C ++ 11 unique_ptr
hoặc shared_ptr
cho mọi thứ MYSQL và bạn sẽ không bao giờ phải lo lắng về việc rò rỉ bộ nhớ
lấy ví dụ này
với C ++ 11
std::unique_ptr< sql::Connection > con( driver->connect("tcp://127.0.0.1:3306", "root", "root"));
hoặc C ++
std::auto_ptr< sql::Connection > con( driver->connect("tcp://127.0.0.1:3306", "root", "root"));
CHỈNH SỬA
bạn không thể chỉ delete Driver
, tôi sẽ xem xét kỹ hơn khi có thời gian
CẬP NHẬT
Tôi đã xem qua driver.h
mã nguồn, nó thực sự được bảo vệ protected:
virtual ~Driver() {}
vì vậy bạn không thể chỉ sử dụng xóa, bao giờ trong public:
có hai
virtual void threadInit() = 0;
virtual void threadEnd() = 0;
đó có thể là thứ bạn cần
cũng có ví dụ này điều này có thể rất hữu ích và thực hiện điều này hơi khác một chút thì bạn