檢驗入參合法性有哪些 C 檢驗引數合法性公用方法

2021-10-13 13:42:03 字數 1277 閱讀 6622

#region 檢驗引數合法性,數值型別不小於0,引用型別不能為null,否則丟擲異常

/// 檢驗引數合法性,數值型別不小於0,引用型別不能為null,否則丟擲異常

/// 待檢引數

/// 待檢引數名稱

/// 數值型別是否可以為0

public static bool checkargument(object arg, string argname, bool canzero = false)

ilog log = logmanager.getlogger(string.format("checkargument_", argname));

tryif (arg == null)

argumentnullexception argumentnullexception = new argumentnullexception(argname);

throw new exception(string.format("引數為空,引發異常", argname), argumentnullexception);

type t = arg.gettype();

if (t.isvaluetype && t.isnumeric())

bool flag = !canzero ? arg.castto(0.0) <= 0.0 : arg.castto(0.0) < 0.0;

if (flag)

argumentoutofrangeexception argumentoutofrangeexception = new argumentoutofrangeexception(argname);

throw new exception(string.format("引數不在有效範圍內,引發異常", argname), argumentoutofrangeexception);

if (t == typeof(guid) && (guid)arg == guid.empty)

argumentnullexception argumentnullexception1 = new argumentnullexception(argname);

throw new exception(string.format("引數為空引發guid異常", argname), argumentnullexception1);

return true;

catch (exception exception)

log.error("檢驗引數合法性", exception);

return false;

#endregion

C 檢驗引數合法性公用方法

region 檢驗引數合法性,數值型別不小於0,引用型別不能為null,否則丟擲異常 檢驗引數合法性,數值型別不小於0,引用型別不能為null,否則丟擲異常 待檢引數 待檢引數名稱 數值型別是否可以為0 public static bool checkargument object arg,stri...

2 C 之cin(一) 關於合法性檢驗

輸入資料時希望有個合法性檢驗的問題,如果輸入的資料不合法則程式提示重新輸入。最初 如下 include include using std cin using std cout using std endl using std vector int main int num vectorivec d...

檢查函式傳入引數的合法性

python是一門動態語言,因此在呼叫函式的時候,可以傳入任何型別的資料,而他又是一門強型別語言,當傳入的引數不合法時,便會在內部報錯。為了減少這一錯誤的發生,python從3.5開始引入了函式註解,如下所示 def fn x int,y int pass配合inspect模組,可以有效的檢查傳入函...