【发布时间】:2013-11-28 20:41:28
【问题描述】:
我在 Visual Studio 2012 中使用 C++(不是 C++/CLI)。
我不明白为什么这段代码可以工作,我原以为它会在编译时失败,但它甚至不会在运行时失败:
double MyClass::MyMethod() const
{
//some code here
return (10, 20, 30, 40);
}
我错误地生成了这段代码,不是故意的,我在运行单元测试时注意到了这个错误。我很惊讶它有效。当我运行它时,它返回 40,列表中的最后一个数字。
谁能解释一下这个语法的含义以及它为什么起作用?
【问题讨论】:
-
我很好奇应该有什么代码?函数调用?
-
@ShafikYaghmour,哈哈,是的!我有 C# 中的代码,我正在传递给 C++,似乎我在创建所有内容时错过了编写函数名,并且这些值不是那样的 const 整数,它们是变量,但对于这个问题,它们已经足够好了。 :) 感谢您的回答!
标签: c++ comma-operator