alg2.c

来自「C++ Primer(第三版)的随书源代码」· C语言 代码 · 共 35 行

C
35
字号
#include <algorithm>
#include <vector>
#include <iostream.h>
#include <assert.h>
	
class TwiceOver {
public:
	bool operator() ( int val1, int val2 ) 
	{
	     return val1 == val2/2 ? true : false;
	}
};
	
int main() 
{
	int ia[] = { 1, 4, 4, 8 };
	vector< int, allocator > vec( ia, ia+4 );

        int *piter;
	vector< int, allocator >::iterator iter;
		
	// piter points to ia[1] 
	piter = adjacent_find( ia, ia+4 );
	assert( *piter = ia[ 1 ] );
		
	// iter points to vec[2] 
	iter = adjacent_find( vec.begin(), vec.end(), TwiceOver() );
	assert( *iter = vec[ 2 ] );

	// reach here: everything ok
	cout << "ok: adjacent-find() succeeded!\n";
		
	return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?