未定義標(biāo)識符怎么解決 有多個重載函數(shù)log10實例與參數(shù)列表匹配?
有多個重載函數(shù)log10實例與參數(shù)列表匹配?C提供了以下重載形式的pow函數(shù):1,double pow(double x,int y)2,float pow(float x,float y)3,flo
有多個重載函數(shù)log10實例與參數(shù)列表匹配?
C提供了以下重載形式的pow函數(shù):
1,double pow(double x,int y)
2,float pow(float x,float y)
3,float pow(float x,int y)
4,long double pow(long double x,long double y)
5,long double pow(long double x,int y)]y)使用時,合理設(shè)置參數(shù)類型,避免出現(xiàn)多個與參數(shù)列表匹配的“pow”實例。最常見的重載之一是使用以下形式:int x,Yint num=pow(x,y),這是一個常見的函數(shù),但是編譯器會提醒有多個“pow”實例與參數(shù)列表匹配。您可以使用cast來解決這個問題:num=pow((float)x,y)
IntelliSense: 有多個,重載函數(shù)
sqrt有多個重載,例如double類型和float類型
現(xiàn)在您是int類型,編譯器不知道要調(diào)用哪一個
您需要顯示什么來執(zhí)行轉(zhuǎn)換
是您將錯誤的參數(shù)傳遞給OpenCV的cascadecassifier類的detectmultiscale函數(shù)。
Bool isgood(int i)
Bool isgood(int i,STD::vector)
Bool isgood(int i,STD::String&;s)
//但您可以調(diào)用
int i=1,j=2
Bool OK=isgood(i,J) //這里您會說“沒有重載函數(shù)匹配參數(shù)列表”]//因為三個重載函數(shù)不接受兩個整數(shù)
//您給出的參數(shù)列表不能匹配其中一個
沒有與參數(shù)列表匹配的重載函數(shù)?
這意味著先將y轉(zhuǎn)換為雙精度,然后再轉(zhuǎn)換為平方。
在C 11之前,sqrt有三種類型:雙精度、浮點和長雙精度。如果參數(shù)是int,編譯器就不知道要調(diào)用哪個sqrt。在c11之后,就不存在這樣的問題了。您可以直接調(diào)用sqrt(int)。但是,您的ide應(yīng)該是vs,它不支持c11。