 2006-04-25 16:44
	    2006-04-25 16:44
  我想应该是你的MSDN的安装文件内的压缩文件损坏了,你可以装VS2005.NET 和相应的MSDN8.0啊!
呵呵!
你的问题我也有过!
-----------------------
Cyberkdll

 2006-04-25 17:38
	    2006-04-25 17:38
   2006-04-26 09:32
	    2006-04-26 09:32
  你是不是用VC.net第一只碟来启动安装MSDN的程序的???VC.NET总共有六只碟哦。
建议初学C++的不要用VC.NET 2005,因为VC2005为C++优化了学多东西。例如返回值命名优化(也就是说反回对象的时候(不是*this),vc2005会优化过之后,不会调用copy constructor)
例如: 
#include<iostream>
using namespace std;
class example
{
public:
 example(int val):_val(val){}
 example(){}
 example(const example& e):_val(e.GetVal()){ cout<<"hello copy constructor"<<endl;}
 
 friend example  operator +(const example &left, const example &right)
 {
  //return example(left._val + right._val);  //这个是普通C++的优化方式
  example e;
  e._val = left._val + right._val;
  return e; //这样就会调用copy constructor 
            //但是vc 2005会自动优化,使其不会调用copy constructor
           //这个有好有不好,如果有些功能是靠copy constructor来完成那就惨了,
          //建议初学者不要用vc2005。
 }
int GetVal()const { return _val;}
 friend ostream &operator <<(ostream &out, example & e)
 {
  out<<e._val;
  return out;
 }
private:
 int _val;
};
int main()
{
 example e(100);
 example e2(100);
 example e3= e + e2;//由于是先执行 operator+(e,e2),所以之后就执行缺省的operator =,不是copy constructor,c++规定
                     //自动执行的转换函数在同一个语句,如果已经执行了一次,第一次执行的就是缺省的行为
 cout<<e3<<endl;
}
[此贴子已经被作者于2006-4-26 10:30:16编辑过]

 2006-04-26 10:07
	    2006-04-26 10:07
   2006-04-26 10:11
	    2006-04-26 10:11
  你首先启动VC.NET的第一只碟,然后选择选项3,产品文档,之后系统会提示放入MSDN第一只碟。如果不是这样安装,MSDN就是垃圾一个,根本就查不了

 2006-04-26 10:34
	    2006-04-26 10:34
  
 2006-04-26 10:55
	    2006-04-26 10:55
   2006-04-26 16:03
	    2006-04-26 16:03
  呵呵,今天下了个2005,不过没下到msdn,郁闷,问题还是没解决,又重装了一下,我有个朋友说是硬件问题,我晕还有这种事?从来没听说过,系统和vc,msdn我都重装过N遍了。我在另外一台机器上也是装的这个版本重来没出错,单位上也都用的这个版本,就我一个有着问题,难道让我用6.0?

 2006-04-26 22:08
	    2006-04-26 22:08
   2006-04-28 13:58
	    2006-04-28 13:58