c++ - 为什么这个函数在没有接收参数的情况下工作?
问题描述
我在网站上看到了代码。我看到一个接收两个参数的函数,但是当调用这个函数时,这里没有传递任何参数。我无法理解这里到底发生了什么。
我的问题是这个功能是如何工作的?
排序(arr,arr+n,排序活动);这里 sort_activity 是一个函数。
这是完整的代码:
#include <bits/stdc++.h>
using namespace std;
#define N 6
struct Activity
{
int start, finish;
};
**bool Sort_activity(Activity s1, Activity s2)
{
return (s1.finish< s2.finish);
}**
void print_Max_Activities(Activity arr[], int n)
{
sort(arr, arr+n, Sort_activity);
cout<< "Following activities are selected \n";
int i = 0;
cout<< "(" <<arr[i].start<< ", " <<arr[i].finish << ")\n";
for (int j = 1; j < n; j++)
{
if (arr[j].start>= arr[i].finish)
{
cout<< "(" <<arr[j].start<< ", "<<arr[j].finish << ") \n";
i = j;
}
}
}
int main()
{
Activity arr[N];
for(int i=0; i<=N-1; i++)
{
cout<<"Enter the start and end time of "<<i+1<<" activity \n";
cin>>arr[i].start>>arr[i].finish;
}
print_Max_Activities(arr, N);
return 0;
}
解决方案
推荐阅读
- html - 如何使 flexbox 子行居中?
- swift - 如何将数据从 UIVIEW 传递到其父视图控制器
- r - 使用 *plyr 更改列名,其中映射由另一个数据框的两列给出
- json - 如何在 Angular 7 对象数组中获取 YAML 文件的数据
- angular - 如何从嵌套的 rxjs 运算符返回多个操作
- python - Django - 将用户设置为不活动 5 秒
- sql - MDX 中的 hh:mm:ss 日期格式
- getgauge - Taiko - 将 mouseAction 作用于选择器
- vue.js - 在尝试服务之前如何检查 vue js 编译错误?
- excel - 如何从另一个模块调用宏但在另一个工作表中运行