假設以下兩種功能:C++:綁定的聯合?
#include <iostream>
#include <cstdlib> // atoi
#include <cstring> // strcmp
#include <boost/bind.hpp>
bool match1(const char* a, const char* b) {
return (strcmp(a, b) == 0);
}
bool match2(int a, const char* b) {
return (atoi(b) == a);
}
這些函數有兩個參數,但可以轉變爲一個可調用對象,通過使用(STD /升壓)bind
只有一個參數。我希望能夠獲得,從這樣的就是有一個參數和返回bool
,Callable對象有兩個參數,並返回& &的bool
的兩個功能
boost::bind(match1, "a test");
boost::bind(match2, 42);
:沿東西線s。參數的類型是任意的。
對於返回bool
的函數,類似operator&&
。
難道你不想要一個函數接受一個參數並返回一個布爾值嗎?即相當於'match1(「測試」,X)&& match2(42,X)'?或者你真的想'match1(「test」,X)&& match2(42,Y)'? – 2010-04-14 15:47:08
我真的想要一個帶有兩個參數的函數。 – 2010-04-15 09:11:05