当我从一个安装有glibc-2.5-25 (suse 10.2)的电脑移植到一个安装有glibc-2.3.2-6 (suse 8.2)的电脑时,我的代码出现了奇怪的问题。我在临时对象上使用了多个方法调用,但在旧机器上它们无法工作。
class A
{
public:
A(int n) {}
void method() {}
};
int main()
{
A(10).method(); //here the compiler gives parse error before .
A a(10);
a.method(); //this works fine
}
之所以能真正做到这一点,是因为采用了旧的校准版本,还是可能是在我的教育、教育和发展研究所(比较环境)中的一个环境?