C ++语法解释

时间:2012-02-27 09:24:54

标签: c++

我有一个以下内联函数:

inline void normalizeGrayOutputCentredSigmoide(const type meanValue=(type)0.0, const type sensitivity=(type)2.0, const type maxOutputValue=(type)255.0)
{
    normalizeGrayOutputCentredSigmoide(meanValue, sensitivity, 255.0, this->Buffer(), this->Buffer(), this->getNBpixels()), maxOutputValue;
};

在此行显示以下编译器警告:

warning: right-hand operand of comma has no effect

有人可以描述这种函数应该做什么吗?

在这种情况下逗号运算符的含义是什么?

2 个答案:

答案 0 :(得分:2)

maxOutputValue超出了您的函数参数。因此编译器将其视为comma operator的右操作数,在这种情况下无效。有关详细信息,请参阅链接的维基百科页面。

答案 1 :(得分:1)

你在maxOutputValue之前关闭了括号,因此编译器将其解释为一个函数而一个"无用的"之后的值,这就是错误所说的