gpt4 book ai didi

c++ - 连接到 postgresql 数据库的奇怪错误

转载 作者:行者123 更新时间:2023-11-29 13:35:56 25 4
gpt4 key购买 nike

我一直在关注 this tutorial ,但我得到一些我不太明白的错误。我几乎只有 2 个功能,一个用于关闭它,一个用于打开它。我不知道为什么会出现这些错误。

数据库编写器.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

数据库编写器.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,所以它不应该是undefined。

Error 1

ConnectDB 的返回类型是 PGconn,conn 是一个 PGconn,所以我不明白为什么它不应该返回它。

Error 2

显然,有些事情我正在公然查看,所以感谢您的努力。

最佳答案

您不需要类声明中的DatabaseWriter::,只需要在定义中。我还建议您仔细查看该定义,尤其是 * 所在的位置。

关于c++ - 连接到 postgresql 数据库的奇怪错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11758195/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com