注册 登录
编程论坛 VC++/MFC

函数返回值问题

suchengjie 发布于 2013-11-21 09:07, 742 次点击
在一个函数中判断是否符合以点(50,40)为圆心,半径为50的圆内的所有点,如果符合就返回该点的值,即data[i][j]。下面是我写的函数,为什么最后只返回一个值而已,而不是所有满足要求的点
程序代码:
int i,j,r,x;
    for( i=0;i<100;i++)
    {
        for( j=50;j<300;j++)
        {
            for( r=0;r<50;r++)
            {
                if(((i-50)*(i-50)+(j-40)*(j-40))<r*r)
                //判断是否满足条件
                {
                    x=this->data[i][j];
               
                }
            }
        }
    }
    return x;
10 回复
#2
peach54602013-11-21 11:14
X可不就是一个值吗?
#3
suchengjie2013-11-21 11:39
要怎样才能返回所有符合条件的值呢
#4
peach54602013-11-21 12:40
返回数组呀
#5
suchengjie2013-11-21 16:43
但是数组的大小不知道
#6
程序设计语言2013-11-21 16:55
你可以声明点类,返回时返回点类的对象,因为基本数据类型只能有一个值。
#7
suchengjie2013-11-21 17:13
回复 6楼 程序设计语言
你说的是CPoint类吗?怎么用
#8
peach54602013-11-21 17:19
以下是引用suchengjie在2013-11-21 16:43:39的发言:

但是数组的大小不知道


你既然是发在C++板块
可以用vector啊....
#9
suchengjie2013-11-21 17:20
回复 8楼 peach5460
怎么用,能具体点不
#10
程序设计语言2013-11-21 17:56
class point
{
public:
 point (x,y);
point fun(point a,point b);
privatr:
 int x;
 int y;
}
point::fun()
{
 point a(x,y);
return a;
}
剩下的自己解决,
#11
peach54602013-11-22 06:52
以下是引用suchengjie在2013-11-21 17:20:03的发言:

怎么用,能具体点不

自己翻书
我都点出来了
1