3

可能重复:
>?= 运算符是什么意思?

我遇到过这条线,

bot <?= fnet[v][u] ? fnet[v][u] : ( cap[u][v] - fnet[u][v] );

这个<?=标志是什么意思?Visual Studio 2012 说它不存在,那它是什么?也许它在以前的一些版本中?

谢谢


我已经在虚拟盒子中使用 Ubuntu 快一年了。没问题。我主要只是使用 eclipse 和 vim 以及命令行的东西。这对我来说做得很好,而且我认识很多其他人也这样做并且没有遇到任何问题。

虚拟盒子就是炸弹。

尽管出于某种原因,我拥有的处理器不支持虚拟化 64 位操作系统,即使它是 64 位 i5... 奇怪的东西,但运行 32 位 ubuntu 对我来说并不是什么大问题。

4

1 回答 1

5

Visual Studio 是对的,运算符不再有效。我不确定它是否曾经是,或者它是一种语言扩展。编辑:这是一个已删除的 gcc 扩展 - http://gcc.gnu.org/ml/gcc/2005-09/msg00299.html

这是一个条件赋值 -a <?= b意思是“赋值baif a < b”。

您可以使用std::minandstd::max代替。

bot <?= fnet[v][u] ? fnet[v][u] : ( cap[u][v] - fnet[u][v] );

将转化为

bot = std::min(bot, fnet[v][u] ? fnet[v][u] : (cap[u][v]-fnet[u][v]) );
于 2012-11-24T23:45:20.180 回答