c++ - 晦涩的 C++ 语法

标签 c++ syntax

<分区>

Possible Duplicate:
C++ Comma Operator

大约一年前,我在我从事的编码项目中注意到一些晦涩的语法:

table_value = table_index += 2, valueFromTable(table_index);

有人认识这个吗?这就像一个带有附加语句的作业。这是在我们的整个跨平台编译器套件中编译的,所以我很确定它是有效的 C++,但我从未见过类似的东西。

如有任何见解,我们将不胜感激。

大齿轮

编辑:继承人一些工作代码:

#include <iostream>
using namespace std ;

int valueFromTable(int a) { return a ; }

int main()
{
  int table_index = 0 ;
  int table_value = table_index += 2, valueFromTable(12);
  cout<<table_value<<endl;
  return 0 ;
}

最佳答案

这是 Comma operator .
它是标准的 C 和 C++,但非常不受欢迎。

它计算两个参数,并返回第二个参数的结果。

关于c++ - 晦涩的 C++ 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4118104/

相关文章:

没有舍入的 C++ long double 格式

C++ 对象指针问题

mysql - 如何在mysql中更新一个char类型的列来增加它的长度

bash - Shell 脚本 "|| { }"可读替代

python - 简化嵌套 for 循环

java - 二维数组代码和方法不起作用

c++ - 使用自动/指向 child 的指针,访问 child 的父方法

c++ - QT 应用程序不能在 Windows 资源管理器上运行?

c++ - OpenCv 已经线程化了吗?

c - 在 C 中使用模板函数的最短示例?