【发布时间】:2013-01-14 22:40:54
【问题描述】:
我有两个类,主类和连接类:
Conn.cpp:
#include "conn.h"
#include <postgresql/libpq-fe.h>
Conn::getConnection()
{
connStr = "dbname=test user=postgres password=Home hostaddr=127.0.0.1 port=5432";
PGconn* conn;
conn = PQconnectdb(connStr);
if(PQstatus(conn) != CONNECTION_OK)
{
cout << "Connection Failed.";
PQfinish(conn);
}
else
{
cout << "Connection Successful.";
}
return conn;
}
conn.h
#ifndef CONN_H
#define CONN_H
#include <postgresql/libpq-fe.h>
class Conn
{
public:
const char *connStr;
Conn();
PGconn getConnection();
void closeConn(PGconn *);
};
Main.cpp
#include <iostream>
#include <postgresql/libpq-fe.h>
#include "conn.h"
using namespace std;
int main()
{
PGconn *connection = NULL;
Conn *connObj;
connection = connObj->getConnection();
return 0;
}
错误:无效使用不完整类型 'PGconn {aka struct pg_conn}'
错误:'PGconn {aka struct pg_conn}'的前向声明
有什么帮助吗?
【问题讨论】:
-
您的
conn.cpp看起来完全错误。你有嵌套在自身内部的Conn::getConnection()的定义? -
是的,你是对的,但我说清楚了,错误没有改变。