【发布时间】:2013-06-30 20:14:19
【问题描述】:
以下代码应该输出6,但它却输出5。我不知道为什么。怎么回事?
#include <iostream>
template <typename T>
void foo(T& y)
{
y++;
}
int main()
{
int x = 5;
// Why won't this line work???/
foo(x);
std::cout << x;
}
Live demo
【问题讨论】:
-
@LightnessRacesinOrbit 如果你是already knew the answer,你为什么不回答你自己的问题?
-
这基本上是漂亮的打印机语法荧光笔的美化错误报告......? (不确定是 +1 还是 -1。)
-
@LightnessRacesinOrbit:也许这应该被称为“自鸣得意的报告”。
-
这个问题似乎是题外话,因为它只是一个笑话。见stackoverflow.com/revisions/…
-
@johnchen902:如果有人从中吸取教训,这不是开玩笑。事实上,我没有发布 A 并不会改变这一点。