1
我一直在关注this tutorial,但是我得到一些我不太明白的错误。我几乎只有2个功能,一个用于关闭它,另一个用于打开它。我无能为力,为什么这些错误在这里。连接到postgresql数据库的奇数错误
DatabaseWriter.h:
#ifndef FILEPARSER_H
#define FILEPARSER_H
#include "DatabaseWriter.h"
using namespace std;
class DatabaseWriter
{
private:
public:
void CloseConn(PGconn *conn);
PGconn DatabaseWriter::*ConnectDB();
DatabaseWriter();
};
#endif
DatabaseWriter.cpp
#include "stdafx.h"
#include <string>
#include <string>
#include "libpq-fe.h"
#include "DatabaseWriter.h"
using namespace std;
const char* CONNECTIONSTRING = "user=postgres password=superman dbname=poker hostaddr=127.0.0.1 port=5432";
void DatabaseWriter::CloseConn (PGconn *conn)
{
PQfinish(conn);
getchar();
exit(1);
}
PGconn DatabaseWriter::*ConnectDB()
{
PGconn *conn = NULL;
// Make a connection to the database
conn = PQconnectdb(CONNECTIONSTRING);
// Check to see that the backend connection was successfully made
if (PQstatus(conn) != CONNECTION_OK)
{
printf("Connection to database failed");
CloseConn(conn);
}
printf("Connection to database - OK\n");
return conn;
}
我定义CloseConn更早自己,所以它不应该是不确定的。
ConnectDB的返回类型的PGconn,conn是一个PGconn数据,所以我不明白为什么它不应该归还。
显然有一些事情我大摇大摆找过来的,所以谢谢你的努力。