CSDN的高手都到哪去了!!!!!
解决方案 »
- 请教:关于文件的读取问题,在线等待!!!
- 快70周年了,勿忘国耻
- 问个简单的问题,有关MSDN
- 江湖救急,两个编译错误,20分一个,一有满意答案,马上结帖.
- 安装了某程序A的鼠标线程钩子,可以捕获A的弹出窗口的消息,却不能模拟这个事件。郁闷!!
- CSocket长连接问题
- dll导出类的问题
- 我在首次编写播放AVI文件的程序中遇到麻烦,拜托您知道的话一定告诉我.
- socket网收缓冲区余量的实时监视
- 高分!!!谁知道哪里有ODK(office developer's kit)???回答任一个问题都有分!
- 为什么我在single document工程中显示不出我要的文本文件呢?
- 用vc做机器的驱动程序,请高手指点我从哪里入手?
该成
ar<<a[0];
ar<<a[1];
ar<<a[2];
这样试验一下。
CArchive& operator << (CArchive& ar,double a[3])
{
ar<<a[1]<<a[2]<<a[3];
return ar;
}
比如你的类为:MyTestClass.那么这样:
void operator << (const CArchive& ar,MyTestClass & classI);
class MyTestClass
{
....
friend void operator << (const CArchive& ar,MyTestClass & classI);
}
void operator << (const CArchive& ar,MyTestClass & classI)
{
ar<<classI.a[0];
ar<<classI.a[1];
ar<<classI.a[2];
}至于为什么不能定义成员函数来实现这个功能的原因很简单,因为操作符<<是针对类MyTestClass进行重载的,也就是说<<必须放在类实例对象的右边,而现在放在<<左边的
是什么呢?是CArchive类的实例ar,当然就不行了。