參考書:《 visual c# 從入門到精通》
第一部分 visual c# 和visual studio 2015概述
第3章 方法和作用域
3.2 使用作用域
3.3 編寫方法
3.4 使用可選引數和具體引數
c#的方法也就是函式的意思。通常建立乙個方法需要有:返回型別、方法名、引數列表、方法主體語句。如果乙個方法不反回任何值要用關鍵字void
。
用return
返回特定型別的值。
對於很簡單的方法,c#允許一種簡化的形式:
int addvalues(int lefthandside,int righthandside)=>lefthandsize+righthandsize;
void showresult(int answer)=>console.writeline($"the answer is ");
這種形式感覺還是很有特色的。
方法主體中宣告的任何變數都具有方法的作用域,它們只能由方法內部的**訪問,即區域性變數。
在類主體中宣告的任何變數都具有類的作用域。類定義的變數稱為字段。和區域性變數相反,可用欄位在不同方法之間共享資訊。
過載允許多個方法同名但引數型別不完全相同,編譯器根據引數型別來區分。(同c++)
下面我們建立方法來計算一名顧問的收費金額。**如下:
using system;
namespace c_3_3
void
run(
)private
void
writefee
(double v)
=> console.
writeline
($"the consultant's fee is :");
private
double
calculatefee
(double dialyrate,
int noofdays)
=> dialyrate * noofdays;
private
intreadint
(string v)
private
double
readdouble
(string v)
}}
有個小技巧是,我們可以先建立方法run:
void
run(
)
然後右擊各個方法名選擇選單中的快速操作和重構,vs會自動生成各個方法的包括返回型別、方法名、引數列表,我們只需要修改方法的主體語句就行了。
void
optmethod
(int first,
double secon=
0.0,
string third=
"hello"
)
可以這樣呼叫:
optmethod
(first:
99,second:
123.45
,third:
"world");
optmethod
(first:
100,second:
54.321
);
使用可選引數和具名引數,過載時可能會造成歧義。比如:
void
optmethod
(int f,
double s=
0.0,
string t=
"hello"
)void
optmethod
(int f,
double s=
0.0,
string t=
"hello"
,int fourth=
100)
上面的**時完全合法的,但如果呼叫optmethod方法時就可能出問題:
optmethod(1,2.5,"world");
上述**是合法的,呼叫的版本選擇和方法呼叫最匹配的。但如果是:
optmethod(1,2.5);
編譯器兩個版本都不選,直接不允許編譯。
C 學習筆記(三) 方法
方法 由方法頭和方法體兩部分構成,方法頭包括返回型別 方法名 引數列表 方法體是乙個由花括號括起來的語句塊。方法體可以包含本地變數 控制流結構 方法呼叫和內嵌的塊。本地變數 儲存本地或者臨時的計算資料,而字段儲存與物件狀態有關的資料。本地變數的存在性與生存期僅限於建立它的塊以及內嵌的塊,它從宣告開始...
Objective C( 三 方法的宣告與實現)
oc方法的宣告與實現 oc方法的宣告在 inte ce中 大括號外 end上面 oc方法的實現在 implementation 中 end上面 oc方法中,乙個引數對應乙個冒號 方法名 例 fangfaming 冒號也是方法名的一部分 返回值型別 方法名 引數名 引數型別 引數 引數名 引數型別 引...
SQL Server中匯入匯出資料三方法比較
當我們建立乙個資料庫時,並且想將分散在各處的不同型別的資料庫分類彙總在這個新建的資料庫中時,尤其是在進行資料檢驗 淨化和轉換時,將會面臨很大的挑戰。幸好sql server為我們提供了強大 豐富的資料匯入匯出功能,並且在匯入匯出的同時可以對資料進行靈活的處理。在sql server中主要有三種方式匯...