如果我有這樣的代碼:防止模板參數的隱式轉換
std::pair<Class1*,std::string> myFunc()
{
...
return std::make_pair(m_myptr, m_mystr);
}
我怎麼執行返回一個std ::對用指針到Class 1和的std :: string?我不希望發生任何隱式轉換。由於模板參數是在這裏推導出來的,我該如何執行?
與
return std::make_pair<Class1*,std::string>(m_myptr, m_mystr);
只需expliciting參數與VS2012
什麼錯誤?如何聲明'm_myptr'和'm_mystr'? –
是的,但由於某種原因,這是錯誤: 錯誤:'std :: make_pair':無法將參數1從'Class1 *'轉換爲'Class1 * &&' –
uhm ...剛發現.. http ://connect.microsoft.com/VisualStudio/feedback/details/691756/std –