我想爲全局變量提供一些外部參數。將C++文件中的參數輸入到全局變量
我實際的代碼是:
static const char conn_str[] =
"user='postgres' password='' host='127.0.0.1' port='5432' dbname='database'";
pqxx::connection C(conn_str);
pqxx::nontransaction N(C);
而且我希望能夠與argv的參數和仍然使用連接C作爲全球喂代碼。
有什麼想法? 在此先感謝...
更改時間:
//I initialized
static const char conn_str[][150]="";
pqxx::connection* C(conn_str);
pqxx::nontransaction* N(C);
int main(int argc, char* argv[])
{
// code (....)
database=argv[4];
char data[]="dbname=%s user=postgres hostaddr=127.0.0.1 port=5432";
sprintf(conn_str,database);
C = new pqxx::connection(conn_str);
N = new pqxx::nontransaction (C);
OpenPSQL();
LoadHeader();
LoadCustomers();
LoadProducts();
LoadTaxes();
// code
delete C; //dont forget to delete it when you are done
delete N; //dont forget to delete it when you are done
}
我有錯誤,比如:
main.cpp: In function ‘void OpenPSQL()’:
main.cpp:268: error: request for member ‘is_open’ in ‘C’, which is of non-class type ‘pqxx::connection*’
爲什麼使用原始指針? –
不錯的做法,我做到了,有些事情做得不好。 –
將此行更改爲以下內容,您正在使用指針指向它: N = new pqxx :: nontransaction(* C); – Sinapse