我是新來的模板編程。我有這樣的問題模板編程
A.process(B)
其中A是一個模板參數。
我還可以將B設置爲模板參數嗎?通過這種方式,我可以讓不同類型的A對象處理不同類型的對象B. B通常不會在運行時多態使用。
謝謝。
我是新來的模板編程。我有這樣的問題模板編程
A.process(B)
其中A是一個模板參數。
我還可以將B設置爲模板參數嗎?通過這種方式,我可以讓不同類型的A對象處理不同類型的對象B. B通常不會在運行時多態使用。
謝謝。
如果我理解你的需求,然後是 - 你可以這樣做:
template <typename A, typename B>
void fn(A& a, B& b)
{
...other code...
a.process(b);
...other code...
}
我不確定這是否是要求。國際海事組織,他/她想要一個成員函數模板'template
@Oli:「也可以通過A參數化」 - 這是雙重調度嗎?如果沒有,我敢肯定我不會是那個給出答案的人:-)。 – 2011-04-27 09:10:09
這是我的理解,是的! – 2011-04-27 09:59:51
這個問題很可能被關閉,因爲它是非常模糊......請儘量會更加精確;也許包括一些代碼,在這些代碼中,您試圖按照自己的意願去做,並解釋哪些方面可以正常工作或無法正常工作,或者解決了編譯器錯誤。你也可以嘗試提供一個最小程序的其餘部分來使用這個功能:'A.process(B)'不會傳達太多,因爲有些語句是矛盾的(例如罰款......將B設置爲模板參數? ,這意味着B是一個積分常數,但稍後你會談到「類型的對象B」,表明B是一種類型)。 – 2011-04-27 08:48:28