我有一个变量uint16_t a=35;
并且有一个函数
UINT Read(unsigned int& nVal);
如何将
a
作为Read()
传递给unsigned int&
?如果我这样通过
Read(a);
我收到以下错误:
最佳答案
您将需要将该值复制到一个(命名的)临时变量中,调用该函数,然后再复制该临时变量(可能在检查溢出后)。
uint16_t a = 35;
...
unsigned int temp = a;
const unsigned int result = Read(temp);
// check for overflow here
a = temp;
当然,如果您可以将
a
的定义更改为unsigned int
,那么这要简单得多(但由于其他原因,我认为这是不可能的)。关于c++ - 在C++中,如何使用参数unsigned int&传递uint16_t变量给函数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51190880/