lesslink.cpp

来自「模拟P2P各种网络环境的,适合新手们的学习,不错的源码.」· C++ 代码 · 共 23 行

CPP
23
字号
#include "lessLink.h"
#include "Link.h"
#include "BandwidthManager.h"

bool lessLink::operator()(Link *pa, Link *pb)
{
	if(!pa || !pb) {
		cout << "null link pointer in lessLink::operator()()" << endl;
		exit(-1);
	}
	
	int a = (*pa).getBandwidthManager().getActiveNumber();
	int b = (*pb).getBandwidthManager().getActiveNumber();
	
	unsigned long banda = (*pa).getBandwidthManager().getBandwidth();
	unsigned long bandb = (*pb).getBandwidthManager().getBandwidth();
	
	banda /= (a == 0 ? 1 : a);
	bandb /= (b == 0 ? 1 : b);
	
	return banda < bandb || (banda == bandb && pa < pb);
}

⌨️ 快捷键说明

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