我想創建一個別名到CPPUNIT_ASSERT_EQUAL_MESSAGE(string message, T expected, T actual)
。我想:爲函數創建別名
template<class T> void (&_assert)(string, T, T) = &CPPUNIT_ASSERT_EQUAL_MESSAGE;
不知道它的都沒錯,但我得到這樣的錯誤
Error 1 error C2530: '_assert' : references must be initialized h:\dropbox\sch\cs3202\code\test\testqueryevaluator\testgetcandidatelist.h 22
Error 2 error C2998: 'void (__cdecl &__cdecl _assert)(std::string,T,T)' : cannot be a template definition h:\dropbox\sch\cs3202\code\test\testqueryevaluator\testgetcandidatelist.h 22
請告訴我正確的語法?
你確定'CPPUNIT_ASSERT_EQUAL_MESSAGE'是一個函數而不是*宏*嗎? – phoeagon 2013-02-17 12:29:56
我不確定其實......我怎麼知道? – 2013-02-17 13:16:30