c++ - C++ 新手 - & 参数前面的符号

标签 c++ reference

我是一名 C# 开发人员,正在学习/再学习/复习 C++

我正在处理数据库访问,我有以下代码,但我无法理解 & 在这种情况下的作用。

SQLHENV     hEnv = NULL;

if (SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &hEnv) == SQL_ERROR)
    {

如果我删除 & 我会收到此错误。

'SQLAllocHandle' : cannot convert parameter 3 from 'SQLHENV' to 'SQLHANDLE *'

起初我以为它只是将此字段作为引用传递,但根据错误,它看起来更像是某种允许它转换的方法?

最佳答案

当在表达式中作为一元运算符出现时,& 是寻址运算符。您显示的代码将指向 hEnv 的指针传递给 SQLAllocHandle()

你可能想拿一个 good C++ book .

关于c++ - C++ 新手 - & 参数前面的符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14160683/

相关文章:

function - 特征库 : return a matrix block in a function as lvalue

Javascript 引用指针帮助/解释

c++ - 什么时候引用变量合适,为什么?你能解释一下实际的语法和位置吗?

haskell - 卡住haskell STrefs

c++ - 如何创建和读取 smime 格式的 pkcs7 签名信封?

c++ - 什么可能导致非阻塞套接字在 `recv` 上阻塞?

android - 如果不支持 EGL_NATIVE_RENDERABLE,如何通过 C++/NDK 访问 OpenGL ES 2?

c++ - 如何根据指向的值对双指针数组进行排序?

c++ - 在 C++ 中映射多个键

java - java中通过引用传递一个整数