我试图传递错误使用按引用传递的主要功能,但是当我编译下面的代码我得到一个错误的错误:的一元无效的类型参数“*”(有“诠释”)
错误:一元的无效类型参数 '*'(有 'INT')
主代码:
main()
{
.
.
int error=-1;
foo(..., error);
.
.
}
功能代码:
foo(..., int &error)
{
if (...)
*error = errno;
}
errno是系统调用在linux中设置的标准错误。
头文件定义了整数变量errno,它由系统调用和一些库函数在发生错误时设置,以指示出错的地方。
引用不是指针。一元'*'是指针。 '错误'是一个参考。 –
你的foo函数需要一个参考,你把它当作一个指针 – KostasRim
谢谢你指出 – Namitha