C++ Primer学习 --- 关于初始化表达式"int ival=ival"
C++ Primer有描述如下:
"在对象的定义中,当对象的标识符在定义中出现后,对象名马上就是可见的,因此用对象初始化它自己是合法的,只是这样做不太明智.例如:
//合法,但不明智
int bizarre=bizarre;
"
我在VC6下写了下面的程序:
#include <iostream>
#include <string>
using namespace std;
void main()
{
int ival=ival;
int ival2=ival2;
cout<<ival<<endl;
cout<<ival2<<endl;
}
结果为:
-858993460
-858993460
我想问的问题是,用int ival=ival这个表达式初始化ival时,究竟是什么值被付给ival了? -858993460是从哪里来的?