1
我有一個Policy
類用下面的函數一個std ::向量:C++的std ::排序使用函數返回值
double Policy::meanResponse();
假設我有Policy
對象(myPolicies
),我希望的向量排序,我希望根據Policy::meanResponse()
的值進行排序。我曾嘗試以下:
bool compare_by_function(const Policy& p1, const Policy& p2)
{
return (p1.meanResponse() < p2.meanResponse());
}
sort(myPolicies.begin(), myPolicies.end(), compare_by_function);
但我得到的錯誤:
"error: passing 'const Policy' as 'this' argument of 'double Policy::meanResponse()' discards qualifers"
能有人請解釋如何正確排序在這種情況下?
不,我還沒有。在函數的括號後面添加'const'有什麼作用?我從來沒有這樣做過。 – synaptik
它將您的方法標記爲常量,這意味着您不會更改該方法中對象的狀態。 –
啊!非常感謝! – synaptik