一周學
c#_第二天
(共分六個部分)函式
1前言c#不支援——全域性函式
所有的函式必須——在類內部宣告
無——原始檔和標頭檔案之分
所有的函式必須——宣告的時候被實現
int notallowed()//
錯誤,c#
沒有全域性函式
sealed class methods
void error()
;//錯誤,函式不能有結尾分號
int alsoerror();//
錯誤,函式必須宣告的時候被實現}c#
規定,所有的函式必須在【類或結構】內實現。
函式是類或結構的成員,函式也被稱為方法。
記住,c#
不允許在函式的宣告時,加入結尾分號。
2宣告函式
函式引數列表
各引數以逗號隔開
引數必須命名
沒有引數時括號不能省略
sealed class methods
void noerror(float delta)
int error(void)//
錯誤,無引數時不允許使用
void
int noerror()}3
值型引數
一般的函式引數是實參的乙個拷貝
實參必須預先被賦值
實參可以是常量型別
sealed class parameterpassing
static void main()
}注意:沒有【被
ref】或者【
out】修飾的引數,都是值型引數。
值型引數,只有在該引數所屬的函式被呼叫之時才存在,並且用呼叫時所傳遞的實參的值來進行初始化。
當函式呼叫結束時,值型引數不復存在。
4引用型引數
引用型引數是實參的乙個別名
沒有發生複製動作
實參必須預先被賦值
實參必須是乙個變數型別(值型引數可以不是)
實參和函式引數都要有
refsealed class parameterpassing
static void main()}有
ref修飾符,才被稱為引用型引數。
引用型引數不產生新的儲存區間。
引用型引數實際上,只是實參所代表變數的另乙個名字。
ref必須同時出現中函式宣告語句和函式呼叫語句中。
引用型引數,需要給實參預先賦值;並且實參必須是變數型別。
5out
型引數out
型引數——是實參的乙個別名
沒有發生複製
實參不必預先賦值
實參必須是變數型別
函式引數必須被預先賦值才能使用
實參和函式引數都要有
outsealed class parameterpassing
static void main()}6
in型引數
readonly
、const、in
——都是
c#關鍵字
它們不能被用於函式引數
ref/out
型引數總是被賦予寫的權力
7函式過載
乙個類中的函式可以有相同的名字,這被稱為過載
函式名和引數——稱為標識
標識必須唯一
返回值型別不是標識
namespace system
public static void writeline(int value)
...}
}注意:過載函式簽名式差異:體現在引數上,而不是返回值
8ref/out
過載ref/out
在大部分情況下是標識的一部分
你可以過載乙個
ref型引數和乙個普通引數
你可以過載乙個
out型引數和乙個普通引數
你不可以過載乙個
ref型引數和乙個
out型引數
sealed class overloading
void allowed(ref int parameter)//
正確,過載乙個
ref型和乙個普通的
void alsoallowed(int parameter)
void alsoallowed(out int parameter)//
正確,乙個
out型和乙個普通的
void notallowed(ref int parameter){}
void notallowed(out int parameter){}//
錯誤,不能過載乙個
ref型和乙個
out型}9
訪問規則
函式引數或返回值不能比所屬函式的訪問級別低
sealed class t//
此類的預設訪問級別是
internal
public sealed class bad
public t return()//
錯誤,函式的訪問級別比返回值高
}public sealed class good
private t return()//
正確,函式訪問級別比返回值低}10
找錯誤sealed class buggy
void readonly(const ref wibble w)//
錯誤,ref
型引數不能用
const
修飾,因為
ref型引數是可能變化的
ref int return type()//
錯誤,ref
型和out
型只能用於函式引數和實參
ref int fieldmodifier;//
錯誤同上}c#
中實現【預設引數】可以通過【函式過載】的方法,如下:
sealed class overload
void defaultargument(double d)
}
第二天學python
while else else是跟在while後的,while沒有被break打斷走else,被break打斷,不走else。utf 8 3個位元組表示乙個中文。中文全包括。至少用乙個位元組表示。unicode 4個位元組表示乙個中文。gbk 包含中文與英文本母,乙個中文用兩個位元組。不全。冪運算 ...
函式第二天
形參 在定義函式時的引數 實參 在呼叫函式時的引數 形參與實參的關係 在呼叫時實參會繫結形參 繫結關係只能在函式體內使用 實參與形參的繫結關係只有呼叫時生效,而呼叫結束後則解除繫結關係 實參傳值 形式一 func 1,2 形式二 a 1 b 2 func a,b 形式三 func int 1 2 形...
學表單的第二天
今天是學表單的第二天,主要增加了幾個html5的屬性,如 input type color file range email number 還學了表單中post和get的區別 get 從指定的資源請求資料。post 向指定的資源提交要被處理的資料.有關 post 請求的其他一些注釋 post 請求不...