📄 functionpointers.cpp
字号:
#include <iostream>
using namespace std;
typedef bool(*YesNoFcn)(int, int);
bool intEqual(int inItem1, int inItem2);
bool bothOdd(int inItem1, int inItem2);
void findMatches(int values1[], int values2[], int numValues, YesNoFcn inFunction);
void findMatches(int values1[], int values2[], int numValues, YesNoFcn inFunction)
{
for (int i = 0; i < numValues; i++) {
if (inFunction(values1[i], values2[i])) {
cout << "Match found at position " << i << " (" << values1[i] << ", " << values2[i] << ")" << endl;
}
}
}
bool intEqual(int inItem1, int inItem2)
{
return (inItem1 == inItem2);
}
bool bothOdd(int inItem1, int inItem2)
{
return (inItem1 % 2 == 1 && inItem2 % 2 == 1);
}
int main()
{
int arr1[7] = {2, 5, 6, 9, 10, 1, 1};
int arr2[7] = {4, 4, 2, 9, 0, 3, 4};
cout << "Calling findMatches() using intEqual():" << endl;
findMatches(arr1, arr2, 7, &intEqual);
cout << endl;
cout << "Calling findMatches() using bothOdd():" << endl;
findMatches(arr1, arr2, 7, &bothOdd);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -