function-overloading

    3熱度

    1回答

    doSmth(() => s)爲什麼不能編譯? 爲什麼其餘的代碼輸出「值」?有沒有辦法調用第二個函數(使用名稱參數)? object Test { def main (args: Array[String]){ lazy val s: String = "" doSmth(s) doSmth("") doSmth(() => s) }

    2熱度

    2回答

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

    0熱度

    1回答

    我想編寫一系列模板函數來序列化和反序列化對象。我已經完成了序列化部分和一切工作: #ifndef SERIALIZE_H #define SERIALIZE_H #include <string> #include <vector> #include <unordered_set> #include <unordered_map> #include <memory> inline

    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;

    2熱度

    2回答

    我發現了很多關於模板演繹的信息(例如C++ templated function overloading rules),但它並不能幫助我理解重載遞歸函數的模板演繹行爲。 在下面的代碼中,我不太瞭解編譯器如何設法推斷出它應該使用vector<T>函數兩次用於vectvect和pair<T,U>兩次用於pairpair - 但它可以。 因此,我不明白爲什麼它不能推斷它應該使用vector<T>和pai

    0熱度

    2回答

    #include "RegionsSingleImage.hpp" #include <iostream> #include <vector> using std::vector; using std::cerr; using std::cout; using std::endl; RegionsSingleImage::RegionsSingleImage(std::stri

    8熱度

    1回答

    我在讀this。約有趣的歷史事實@NPE會談給出&回答說, 在早期的c + +曾經有過那要 來聲明爲重載標識一個特殊的關鍵字(超載); 那麼,什麼是落後去除超載關鍵字的原因是什麼?我沒有Stroustrup的Design and Evolution of C++。超載關鍵字有什麼問題?

    2熱度

    3回答

    我有以下代碼重載模板函數 #include <iostream> using namespace std; template <class T> const T& max(const T& a1, const T& a2) { cout << "general template" << endl; return (a1 < a2) ? a2 : a1; } te

    0熱度

    1回答

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

    1熱度

    1回答

    當使用什麼應該是強類型枚舉時,我真的在繼承問題上苦苦掙扎 - 但是,當通過繼承使用時,枚舉似乎是模糊的。 進出口使用G ++(GCC)4.7.2 enum class AE { V1 }; enum class BE { V2 }; enum class CE { V3 }; struct A { void set(AE enumval) { } }; struct B { void s