function-overloading

    4熱度

    1回答

    我正在尋找刪除一些未使用的重載,並觸發編譯錯誤,編譯器說這是一個模板替換錯誤。但我認爲「替代失敗並不是一個錯誤」,無論如何,爲什麼要消除超載導致它? 簡單的開始: #include <string> int ParseInt(const char *); int ParseInt(std::string); bool F(int(*)(const char *)); bool Use

    0熱度

    1回答

    Cygwin的Armadillo的C++ 11功能被禁用。但它適用於Linux。 我想我的代碼是跨平臺的。 起初: // constructor MyClass(arma::vec x) { init(x); } 當我通過一個數組,因爲犰狳的C++ 11點的選擇是不是在Cygwin啓用它沒有工作: MyClass a({1.0,2.0,3.0}); 這將導致在Cygwin中

    0熱度

    1回答

    我想正確使用MATLAB中的代碼來計算給定的公式,並且我想用與給定公式中相同的符號來編寫代碼。在公式中,我有兩個不同的函數具有相同的名稱,但只有參數的數量不同:Kn(a,b)和Kn(a)。 有沒有一種方法在MATLAB中定義重載函數,如在c + +中?

    2熱度

    2回答

    在我的研究中,我讀過C不支持重載。但是,這個應用程序是使用C++而不是C。我也是不能修改 stdio.h。當我試圖移動被寫入在Visual Studio 2003到Visual Studio應用程序/項目創建錯誤2010 我收到錯誤:重載函數的第二個C鏈接: 錯誤C2733 '_tempnam_dbg' 不允許C:... \ stdio.h中 和 錯誤C2733:重載函數 '_wtempnam_d

    4熱度

    1回答

    簡單的程序: void f(const std::string& s); void f(const char* p); f({}); 爲什麼鐺調用f((const char*)nullptr)?我期望編譯器警告關於模糊的調用。

    0熱度

    2回答

    如果具有相同名稱的函數在具有不同簽名的多個文件中定義,那麼這些函數是否被重載,例如: File1.cpp int foo(){//do something} File2.cpp int foo(int a){//do something} 如果我編譯在同一個項目中這兩個文件,將這些功能被視爲重載函數。

    3熱度

    1回答

    Scott Meyers在this talk at 44:15說const在C++ 0x標準庫中使用Rvalue引用來捕獲某些不應該編譯的重載。 用於說明上述觀點的代碼片段會有所幫助。謝謝。

    1熱度

    1回答

    在此代碼中,第35行的abs()函數出現錯誤。編譯器我選擇了:C++(4.3.2) 看起來錯誤在底部。 void bfs(pair<int,int> pixelpos){ bfsq.push(pixelpos); int u,v,i,j; pair<int,int> tmpq; while(!bfsq.empty()){ tmpq = bfsq.front(); u =

    3熱度

    4回答

    如果有兩種方法,他們有不同的參數,他們的返回類型是不同。就像這樣: int test(int p) { System.out.println("version one"); return p; } boolean test(boolean p, int q) { System.out.println("version two"); return p;

    0熱度

    1回答

    比方說,我們有兩個功能: public static void function1(ArrayList<Datatype1> dat1){ doSomething(); } public static void function2(ArrayList<Datatype2> dat2){ doSomething(); } 這兩個功能做同樣的