在 C++ 中编程以使用 2 类 并找到 2 个数字中的最大值
Program in c++ to use 2 classes and find maximum of 2 numbers
我想找到 2 个数字中的最大值,但我需要使用 2 类 和友元函数而不是简单的方法。如何实施?
我正在使用以下代码,但代码不起作用。
#include<iostream>
using namespace std;
class one
{
int a;
public:
friend int cal(one a);
};
class two
{
int b;
public:
friend int cal(one a,two b);
};
cal(int f,int g)
{
int ans=(x.a>y.b)?x.a:y.b;
}
int main()
{
one x;
two y;
cal(10,20);
}
#include<iostream>
using namespace std;
class biggest
{
private:
int a,b;
public:
void input();
void display();
};
void biggest::input()
{
cout<<"Enter 2 nos.:";
cin>>a>>b;
}
void biggest::display()
{
if(a>b)
cout<<"Biggest no.:"<<a;
else
cout<<"Biggest no.:"<<b;
}
int main()
{
biggest b;
b.input();
b.display();
}
输出
输入2个:133 21
示例输出
最大编号:133
通过将函数设置为 "friend",您可以授予它访问 class 的私有成员的权限。例子看起来很奇怪,但我想这就可以了。这里的两个 classes 都允许私有成员访问 "cal" 函数。
#include<iostream>
using namespace std;
class one;
class two;
class one
{
int a = 10;
public:
friend int cal(one a,two b);
};
class two
{
int b = 20;
public:
friend int cal(one a,two b);
};
int cal(one x,two y)
{
return (x.a>y.b)?x.a:y.b;
}
int main()
{
one x;
two y;
cout << cal(x,y);
}
我想找到 2 个数字中的最大值,但我需要使用 2 类 和友元函数而不是简单的方法。如何实施? 我正在使用以下代码,但代码不起作用。
#include<iostream>
using namespace std;
class one
{
int a;
public:
friend int cal(one a);
};
class two
{
int b;
public:
friend int cal(one a,two b);
};
cal(int f,int g)
{
int ans=(x.a>y.b)?x.a:y.b;
}
int main()
{
one x;
two y;
cal(10,20);
}
#include<iostream>
using namespace std;
class biggest
{
private:
int a,b;
public:
void input();
void display();
};
void biggest::input()
{
cout<<"Enter 2 nos.:";
cin>>a>>b;
}
void biggest::display()
{
if(a>b)
cout<<"Biggest no.:"<<a;
else
cout<<"Biggest no.:"<<b;
}
int main()
{
biggest b;
b.input();
b.display();
}
输出
输入2个:133 21
示例输出
最大编号:133
通过将函数设置为 "friend",您可以授予它访问 class 的私有成员的权限。例子看起来很奇怪,但我想这就可以了。这里的两个 classes 都允许私有成员访问 "cal" 函数。
#include<iostream>
using namespace std;
class one;
class two;
class one
{
int a = 10;
public:
friend int cal(one a,two b);
};
class two
{
int b = 20;
public:
friend int cal(one a,two b);
};
int cal(one x,two y)
{
return (x.a>y.b)?x.a:y.b;
}
int main()
{
one x;
two y;
cout << cal(x,y);
}