SQLHANDLE-Parameters:函数不接受x个参数(但实际上确实如此)



我在c ++中实现了一些函数来处理sql查询和其他东西。因为我使用相同的句柄在不同的函数中执行此操作,所以我将句柄作为参数提供(实际上我想引入对句柄的引用 - 但我是 c++ 的新手,仍然无法理解指针背后的概念等等(。

因为错误消息说,没有带有x参数的函数,但实际上有一个(还有一个前向声明(,我认为,我试图对它的定义和使用在某种程度上是错误的。

以下是前瞻声明:

static HRESULT 
_OpenDatabase(
LPCWSTR connectionString, 
SQLHANDLE hdlStmt, 
SQLHANDLE hdlEnv, 
SQLHANDLE hdlConn
);

和调用(获取连接字符串作为输入:__in LPCWSTR ConnectString(

SQLHANDLE hdlStmt = INVALID_HANDLE_VALUE;
SQLHANDLE hdlEnv = INVALID_HANDLE_VALUE;
SQLHANDLE hdlConn = INVALID_HANDLE_VALUE;
hr = _OpenDatabase(
ConnectString,
&hdlStmt, // this might be wrong?
&hdlEnv, // and this
&hdlConn // and this
);

我做错了什么?

你把&放在参数前面。为什么?你有 3SQLHANDLE,你需要 3SQLHANDLE

相关内容

最新更新