The program has exited with code 0 (0x0)问题

xiaowenmanbu 2007-11-17 06:32:39

请看下这个程序的问题!


//Array.h


#include <iostream>

using namespace std;

class Array
{
friend istream &operator>>( istream &, Array & );
friend ostream &operator<<( ostream &, Array & );
public:
Array();
void setNumber( int , int );
void setNumber( int , int , const int & );
int getNumber( int, int ) const;
const Array operator+( const Array & );
private:
int a[2][3];
};
..............................................................
//Array.cpp

#include "Array.h"

Array::Array()
{
for ( int n = 0; n < 2; n++ )
{
for ( int m = 0; m < 3; m++ )
{
a[n][m] = 1;
}
}
}

void Array::setNumber( int i, int j)
{
cin >> a[i][j];
}

void Array::setNumber( int i, int j, const int &k )
{
a[j][j] = k;
}

int Array::getNumber( int i, int j ) const
{
return a[i][j];
}

const Array Array::operator+( const Array &array )
{
Array temp;

for ( int n = 0; n < 2; n++ )
{
for ( int m = 0; m < 3; m++ )
{
int num = a[n][m] + array.a[n][m];
temp.setNumber( n, m, num );
}
}
return temp;
}

istream &operator>>( istream &input, Array &array )
{
for ( int n = 0; n < 2; n++ )
{
for ( int m = 0; m < 3; m++ )
{
array.setNumber( n, m );
}
}

return input;
}

ostream &operator<<( ostream &output, Array &array )
{
for ( int n = 0; n < 2; n++ )
{
for ( int m = 0; m < 3; m++ )
{
array.getNumber( n, m );
}
}

return output;
}
..............................................................
//aa.cpp

#include <iostream>
#include "Array.h"

using namespace std;

void main()
{
Array a, b, c;

cout << "cin >> b";
cin >> b;
c = a + b;//The program 'G:\我的c++程序\11_1a\Debug\11_1a.exe' has exited with code 0 (0x0).
cout << "c = a + b" << endl;
cout << c;

}
...全文
2216 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ryfdizuo 2007-11-17
  • 打赏
  • 举报
回复
类的成员函数里面不能调用setNumber(n,m,num),也根本不需要,直接就能访问私有的a数组啊,
setNumber( n,m,num)是提供类外面调用私有成员的接口。
ryfdizuo 2007-11-17
  • 打赏
  • 举报
回复
#include <iostream>

using namespace std;

class Array
{
friend istream &operator>> ( istream &, Array & );
friend ostream &operator<< ( ostream &, Array & );
public:
Array();
//没有必要
//void setNumber( int , int );
void setNumber( int , int , const int & );
int getNumber( int, int ) const;
const Array operator+( const Array & );
private:
int a[2][3];
};

//array.cpp

#include "Array.h "

Array::Array()
{
for (int i=0; i<2; i++)
{
for (int j=0; j<3; j++)
{
a[i][j] = 1;
}
}
}

void Array::setNumber( int i, int j, const int &k )
{
a[j][j] = k;
}

int Array::getNumber( int i, int j ) const
{
return a[i][j];
}

const Array Array::operator+( const Array& array)
{
Array temp;

for( int n = 0; n < 2; n++)
{
for(int m = 0; m < 3; m++)
{
temp.a[n][m] = a[n][m] + array.a[n][m];
//temp.setNumber( n, m, num );
}
}
return temp;
}

istream &operator>> ( istream &input, Array &array )
{
for (int i=0; i<2; i++)
{
for (int j=0; j<3; j++)
{
input >> array.a[i][j];
}
}
return input;
}

ostream &operator <<(ostream& output, Array& array)
{
for(int n=0; n < 2; n++)
{
for(int m = 0; m < 3; m++ )
{
output << array.getNumber(n, m) << " ";
}
}
output << endl;
return output;
}
//main
#include <iostream>
#include "Array.h "

using namespace std;

int main()
{
Array a, b, c;

cout << "cin >> b :";
cin >> b;
c = b + a;
cout << "c = a + b " << endl;
cout << c;

return 0;
}

随着通信电子技术的迅速发展,信息技术给家居行业产生了深远的影响,家居环境的智能化监控已经成为智能家居的一个重要的发展方向。人们逐渐对自己的生活提出一种更高的要求,他们需要一种智能化、可交互,并且融合现代创新科技的产品来改善他们的生活环境,使他们生活更加安全、舒适、便捷、智能。本文根据智能家居的发展背景和研究现状,并且从实用性和可行性角度出发,研究设计了一种基于STM32单片机的智能家居系统。该系统由一个多功能综合的技术系统组成,各个多功能子系统间具有协同配合能力。基于STM32单片机实现的功能子系统包括:智能温度检测,智能湿度检测,智能烟雾/火灾检测智能检测,无线传输,人机交互机构,风扇调节,报警模块。 整个系统分为前端51单片机采集板和后端STM32单片机接收板。 采集板使用DHT11温湿度传感器、MQ烟雾传感器完成室内家居环境的采集。然后通过nRFL24L01将采集到的数据发送给后端。接收板使用LCD1602完成数据显示、使用蜂鸣器模块报警,使用风扇驱动模块调节室内家居环境。本文完成了智能家居控制系统前端、后端软硬件的设计,使用Altium designer绘制了电路原理图,使用Keil C完成了51单片机和STM32单片机的编程与调试。 最后,对本文设计的基于STM32的智能家居控制系统进行部署调试。试验结果表明,该系统可成功应用在智能家居环境检测调节和火灾安全防护的领域,可提高家居生活智能化水平。

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧