版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、Delphi關(guān)鍵字和保留字分類整理 Delphi 中的“關(guān)鍵字”和“保留字”,方便查詢“關(guān)鍵字”和“保留字”不做區(qū)分,一共 107 個(gè)。- 名稱:【program】、【library】、【package】、【unit】 功能:用于標(biāo)識程序文件、動態(tài)鏈接庫文件、包文件、單元文件的文件頭。 program :編譯后生成 exe 文件,可以直接執(zhí)行。 library :編譯后生成 dll 文
2、件,可被其他程序調(diào)用。 package :編譯后生成 bpl 文件,可被安裝到 delphi 的控件庫中,從而在以后 的開發(fā)中使用控件。 unit :編譯后生成 dcu 文件,將被編譯到 exe 和 dll 文件中。- 空程序文件 Test.dpr program Project1;beginend.- 空動態(tài)鏈接庫文件 Test.dp
3、r library Project1;beginend.- 空包文件 Test.dpk package Package1;end.- 空單元文件 Test.pas unit Unit1;interfaceimplementationend.- 名稱:【contains】、【requires】 功能:與包文件相關(guān)的關(guān)鍵字。 contains :用于指出某個(gè)包(package)是否包含某個(gè)文件,用 contains 引入
4、60; 的文件必須被添加到包文件中,它可以避免關(guān)鍵文件的引用丟失。 requires :指出編譯 package 時(shí)的必備條件。若 requires 的條件未滿足,則 不允許編譯包。-package MyPackage;requires 包需要運(yùn)行在下面的環(huán)境中 rtl, clx;contains 包需要用到下面的文件 &
5、#160; DB, DBMyControl;end.- 名稱:【interface】、【implementation】、【initialization】、【finalization】 功能:與單元文件相關(guān)的關(guān)鍵字。 interface :單元文件的接口部分,也用于定義接口類型。 implementation :單元文件的實(shí)現(xiàn)部分。
6、160; initialization :單元文件的初始化部分。 finalization :單元文件的反初始化部分。- 單元文件結(jié)構(gòu) unit Unit1;interface 引用其他單元、定義數(shù)據(jù)類型、定義過程函數(shù)、定義變量常量等 此處定義的類型或數(shù)據(jù)對其他單元是可見的(可訪問的) implementation 引用其他單元、實(shí)現(xiàn)接口部分定義的類型、過程、函數(shù)的具體代碼 此處定義的類型或變量只對本單
7、元可見 initialization 這里編寫單元被載入時(shí)所要調(diào)用的方法 通常是初始化一些不能自動初始化的對象,也可以不用 initialization 最常用的情況是對 OLE 對象做初始化 finalization 這里編寫單元被釋放時(shí)所要調(diào)用的方法 通常是釋放掉單元中不能自動釋放的對象,也可以不用 finalization 最常用的情況是對 OLE 對象做反初始化 end.- 定義接口類型 IEnumerator = inter
8、face(IInterface) function GetCurrent: TObject; function MoveNext: Boolean; procedure Reset; property Current: TObject read GetCurrent;end;- 名稱:【uses】 功能:用于引用一個(gè)外部的單元。 uses 語
9、句通常放在一個(gè)單元的接口部分或?qū)崿F(xiàn)部分。- 程序文件 program Project1;uses Forms, Unit1 in 'Unit1.pas' Form1;beginend.- 單元文件 unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes;implementationuses StrUtrls;end.- 名稱:【type】 功能:用于聲明各種類型。-typ
10、e 聲明接口 IMyInterface = interface end; 聲明類指針 PMyObject = TMyObject; 聲明類 TMyObject = class(TObject) end; 聲明結(jié)構(gòu) TMyRecord = record end; 聲明函數(shù) TMyFunc = functi
11、on(I: Integer): string; 聲明自定義類型 TCol = (cItemA, cItemB, cItemC); TColSet = set of TCol; TLatter = 'A' . 'Z' TInt = Integer;- 名稱:【var】、【const】、【resourcestring】、【threadvar】、【absolute】 功能:用于聲明變量和常量
12、 var :聲明變量,或者聲明函數(shù)的參數(shù)為傳址參數(shù)。 const :聲明常量,或者聲明函數(shù)的參數(shù)為常量參數(shù)。 resourcestring :聲明資源字符串。 threadvar :聲明一個(gè)線程內(nèi)變量,此變量僅供各個(gè)線程內(nèi)部使用。如果在線程外
13、; 初始化該變量,則初始化的內(nèi)容不會被傳入線程內(nèi),當(dāng)線程創(chuàng)建時(shí),該變量為空, 且被認(rèn)為是線程內(nèi)的私有變量,與線程外的該變量互不干擾,與其它線程內(nèi)的該變 量也互不干擾。threadvar 必須聲明為全局變量,然后在各個(gè)線程內(nèi)使用。 Delphi 說在線程內(nèi)使用的 threadvar 必須在線程結(jié)束前手
14、動釋放其占用的空間。 比如 S := '' 即將字符串資源釋放。關(guān)于資源釋放,Delphi 沒有更多解釋。 absolute :定義一個(gè)變量與另一個(gè)變量地址相同- 關(guān)于變量和常量的聲明 procedure TForm1.Button1Click(Sender: TObject);resourcestring 聲明資源字符串 rsButtonCaption =
15、0;'測試(&T)'const 聲明常量 conMax = 50;var 聲明變量 iNum: Integer; bFlag: Boolean;begin Button1.Caption := rsButtonCaption; iNum := Random(100); bFlag := iNum >= conMax; Caption := IntToStr(iNum) + ' - '
16、+ BoolToStr(bFlag, True);end;- 關(guān)于 threadvar unit Form1Unit;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Se
17、nder: TObject); private Private declarations public Public declarations end;var Form1: TForm1;implementation$R *.DFM NOTE: 將 GlobalStr 的定義由 var 改為 threadvar 來觀察不同 var 線程內(nèi)外共用此變量 / threadvar
18、; 線程內(nèi)將創(chuàng)建此變量的一個(gè)副本,線程內(nèi)外此變量互不干擾 GlobalStr: string;type TTLSThread = class(TThread) private FNewStr: String; protected procedure Execute; override; public constructor Cr
19、eate; overload; constructor Create(const ANewStr: String); overload; end;procedure SetShowStr(const S: String; const sTitle: string = '');begin if S = '' then
20、; MessageBox(0, PChar(GlobalStr), PChar(sTitle), MB_OK) else GlobalStr := S;end;constructor TTLSThread.Create;begin inherited Create(False);end;constructor TTLSThread.Create(const ANewStr: String);begin FNewStr := ANewStr;
21、 inherited Create(False);end;procedure TTLSThread.Execute;begin FreeOnTerminate := True; SetShowStr(FNewStr); SetShowStr('', '線程內(nèi) - 線程執(zhí)行時(shí)');end;procedure TForm1.Button1Click(Sender: TObject);begin SetShowStr('線程外的 GlobalStr 變量'
22、); SetShowStr('', '線程外 - 線程創(chuàng)建前'); TTLSThread.Create('線程內(nèi)的 GlobalStr 若為 threadvar 類型,則與線程外的 GlobalStr 無關(guān)'); Sleep(100); SetShowStr('', '線程外 - 線程創(chuàng)建后,觀察 GlobalStr 在線程內(nèi)外是否不同');end;end.- 同地址變量 下面的代碼聲明了變量 ucLen 的起始地址與 ShortStrig 型變量
23、 sStr 相同,由 于 ShortString 的第 0 個(gè)位置保存了字符串的長度,所以 ucLen 的值即為字符 串的長度。 procedure TForm1.Button1Click(Sender: TObject);var sStr: ShortString; ucLen: Byte absolute sStr;begin sStr := '1234567890' Caption := IntToStr(ucLen);end;- 名稱:
24、【begin】、【end】 功能:begin end :組合使用,可以表示一段代碼或一個(gè)程序的開始和結(jié)束。 end 還可以與 case, class, interface, asm, unit, package 等相匹配。 對于語句塊,end 后必須添加分號。而對于單元或包,end 后必須添加句點(diǎn)。在 If 語句中 else 關(guān)鍵字前的 end 后不允許添加分號。- 一段代碼的開始和結(jié)束 procedure
25、;TForm1.Button1Click(Sender: TObject);var I: Integer;begin I := Random(100); if I < 50 then begin Caption := IntToStr(I); end else begin Caption := IntToStr(I - 50);
26、60;end;end;- 程序文件的開始和結(jié)束 program Project1;beginend.- 包文件的開始和結(jié)束,不需要 begin package Package1;end.- 類的開始和結(jié)束,不需要 begin TMyObject = class(TObject)end;- 名稱:【if】、【then】、【else】、【case】 功能:if then else 組合使用,構(gòu)成條件判斷語句,當(dāng)不需要 else 時(shí),可以省略 else ,當(dāng) el
27、se 與 if 配合使用時(shí),else 前面的一條語句不能以分號結(jié)束。 case else 組合使用,構(gòu)成條件選擇語句。 else 還可以與 try except on 語句組合,構(gòu)成異常處理語句,詳見 except。- if then else(條件判斷) procedure TForm1.Button1Click(Sender: TObject);var I: Integer;begin I
28、:= Random(100); if I < 50 then Caption := IntToStr(I) else Caption := IntToStr(I - 50); end;end; if then(條件判斷,無 else) procedure TForm1.Button1Click(Sender: TObject);var I: Integer;begin I :=
29、Random(100); if I < 50 then Caption := IntToStr(I);end;- case else(條件選擇) procedure TForm1.Button1Click(Sender: TObject);var I: Integer;begin I := Random(100); case I of 1 . 33:
30、 Caption := '小' 34 . 66: Caption := '中' 67 . 99: Caption := '大' else Caption :=
31、60;'0' end;end;- 名稱:【for】、【to】、【downto】、【do】、【while】、【repeat】、【until】 功能:for to(或downto) do 組合使用,構(gòu)成 for 循環(huán)語句。 while do 組合,構(gòu)成 while 循環(huán)語句。 repeat until 組合,構(gòu)成 repeat 循環(huán)語句。
32、; for 還可以與 in 組合,構(gòu)成 for 循環(huán)語句,詳見 in do 還可以與 with 組合構(gòu)成默認(rèn)對象語句,詳見 with do 還可以與 try except on 組合使用,構(gòu)成異常處理語句,詳見 except。- for 循環(huán)語句,循環(huán)變量遞增 procedure TForm1.Button1Click(Sender: TObject);var
33、 I, iSum: Integer;begin iSum := 0; for I := 1 to 100 do iSum := iSum + I; Caption := IntToStr(iSum); 結(jié)果 5050 end; for 循環(huán)語句,循環(huán)變量遞減 procedure TForm1.Button1Click(Sender: TObject);var I, iSum: Integer;begin
34、60; iSum := 0; for I := 100 downto 1 do iSum := iSum + I; Caption := IntToStr(iSum); 結(jié)果 5050 end;- while 語句 procedure TForm1.Button1Click(Sender: TObject);var I, iSum: Integer;begin iSum := 0; I
35、:= 0; while I <= 100 do begin iSum := iSum + I; Inc(I); end; Caption := IntToStr(iSum); 結(jié)果 5050 end;- repeat 語句 procedure TForm1.Button1Click(Sender: TObject);var I, iSum: Integer;begin
36、 iSum := 0; I := 0; repeat iSum := iSum + I; Inc(I); until I > 100; Caption := IntToStr(iSum); 結(jié)果 5050 end;- 名稱:【with】 功能:用于設(shè)置默認(rèn)對象,簡化代碼。- with 語句 procedure TForm1.Button1Cl
37、ick(Sender: TObject);begin/ 這里的 4 行代碼可以用 with 語句簡化輸入:/ (Sender as TButton).Left := 0;/ (Sender as TButton).Top := 0;/ (Sender as TButton).Width := 120;/ (Sender as TButton).Height := 60; with (Sender as TButton) do begin Left := 0;
38、0; Top := 0; Width := 120; Height := 60; end; Caption := '測試 with 語句' Width := Width div 2; Height := Height div 2;end;- 名稱:【label】、【goto】 功能:goto :無條件跳轉(zhuǎn)
39、0; label :定義跳轉(zhuǎn)標(biāo)簽,goto 語句只能跳轉(zhuǎn)到已定義的標(biāo)簽位置。-procedure TForm1.Button1Click(Sender: TObject);label AA;var I, iNum: Integer;begin I := 0; iNum := 0;AA: inc(I); iNum := iNum + I; if I < 10 then
40、 goto AA; Caption := IntToStr(iNum); 結(jié)果 55 end;- 名稱:【asm】、【assembler】 功能:asm 用于在程序中插入?yún)R編代碼。 使用匯編代碼時(shí), 必須使用 asm .end; 的結(jié)構(gòu),而非 begin . end; assembler 用于支持早期的匯編, 如8
41、0386等。它和 asm 的區(qū)別是 asm 允許使用 Win32 匯編, 而 assembler 只允許 80x86 匯編, 它不允許 Invoke 語句的出現(xiàn)。-function IntToHex(Value: Integer; Digits: Integer): string;asm CMP EDX, 32 JBE A1 xor EDX, EDXA1: PUSH ESI MOV
42、0; ESI, ESP SUB ESP, 32 PUSH ECX MOV ECX, 16 CALL CvtInt MOV EDX, ESI POP EAX CALL System.LStrFromPCharLen ADD ESP, 32 POP ESIend;- 名稱:【and】、【or】、【not】、【xor】、【shl】、【shr】、【div】、【mod】 功
43、能:Delphi 運(yùn)算符。 and(邏輯與 或 按位與) or(邏輯或 或 按位或) not(邏輯非 或 按位否) xor(邏輯異或 或 按位異或) shl(位左移) shr(位右移) div(整除) mod(求余數(shù)) xor(邏輯異或 或 按位異或)我喜歡把它叫
44、做“邏輯異”,只要 xor 兩邊的布爾 值不相同(相異),結(jié)果就為 True,否則就為 False。只要 xor 兩邊的位狀態(tài)不 同(0 和 1 不同),結(jié)果就為 1,否則就為 0。- 邏輯與 procedure TForm1.Button1Click(Sender: TObject);var A, B: Integer;begin A := 1; B := -1;
45、0; if (A > 0) and (B > 0) then Caption := 'True' else Caption := 'False' 結(jié)果 False end; 邏輯或 procedure TForm1.Button1Click(Sender: TObject);var A, B: Integer;b
46、egin A := 1; B := -1; if (A > 0) or (B > 0) then Caption := 'True' 結(jié)果 True else Caption := 'False'end; 邏輯非 procedure TForm1.Button1Click(Se
47、nder: TObject);var A, B: Integer;begin A := 1; B := -1; if not A > B then Caption := 'True' else Caption := 'False' 結(jié)果 False end; 邏輯異或 procedure TForm1.
48、Button1Click(Sender: TObject);var A, B: Integer;begin A := 1; B := -1; if (A > 0) xor (B > 0) then Caption := 'True' xor 兩邊的布爾值不同,結(jié)果 True else Caption :=
49、0;'False'end;- 按位與 procedure TForm1.Button1Click(Sender: TObject);var A, B, C: Integer;begin A := 360; B := 120; C := A and B; Caption := IntToStr(C); 結(jié)果:104 end; 按位或 procedure TForm1.Button1Click(Sender: TObject);var
50、60; A, B, C: Integer;begin A := 360; B := 120; C := A or B; Caption := IntToStr(C); 結(jié)果:376 end; 按位否 procedure TForm1.Button1Click(Sender: TObject);var A, C: Integer;begin A := 360; C := not A; Caption
51、 := IntToStr(C); 結(jié)果:-361 end; 按位異或 procedure TForm1.Button1Click(Sender: TObject);var A, B, C: Integer;begin A := 360; B := 120; C := A xor B; Caption := IntToStr(C); 結(jié)果:272 end; 位左移 procedure TForm1.Button1Click(Sen
52、der: TObject);var A, C: Integer;begin A := 360; C := A shl 1; 相當(dāng)于 A 乘以 2 的 1 次方 Caption := IntToStr(C); 結(jié)果:720 end; 位右移 procedure TForm1.Button1Click(Sender: TObject);var A, C: Integer;begin A := 360; C := A&
53、#160;shr 1; 相當(dāng)于 A 除以 2 的 1 次方 Caption := IntToStr(C); 結(jié)果:180 end;- 整除 procedure TForm1.Button1Click(Sender: TObject);var A, B, C: Integer;begin A := 36; B := 5; C := A div B; Caption := IntToStr(C);
54、; 結(jié)果:7 end; 求余數(shù) procedure TForm1.Button1Click(Sender: TObject);var A, B, C: Integer;begin A := 36; B := 5; C := A mod B; Caption := IntToStr(C); 結(jié)果:1 end;- 名稱:【try】、【finally】、【except】、【on】、【raise】 功能:這些都是異常處理語句。
55、0; try finally 組合使用,構(gòu)成異常處理語句。先執(zhí)行 try 部分的語句,無論 try 部分是否執(zhí)行成功,finally 部分都會被執(zhí)行。 try except on 組合使用,構(gòu)成異常處理語句。正常情況下執(zhí)行 try 部分的語句。 如果發(fā)生異常,則執(zhí)行 except 后的語
56、句。 raise 用于拋出異常。如果希望通過外部程序處理異常,或是在異常發(fā)生時(shí)重新將 異常拋出,可以使用 raise 語句。異常被拋出后,raise 后面的代碼將不被執(zhí)行。- try finally(異常處理) procedure TForm1.Button1Click(Sender: TObject);var Strs: TStringList;begin Strs := TStringLis
57、t.Create; try Strs.Add('finally Test'); Caption := Strs0; finally Strs.Free; end;end;- try except on else(異常處理) procedure TForm1.Button1Click(Sender: TObject);var I: Integer; S: String;beg
58、in S := '123A' try I := StrToInt(S); except on EZeroDivide do Caption := 'EZeroDivide' on EOverflow do
59、 Caption := 'EOverflow' else Caption := 'Unknow Error' end;end;- raise 拋出異常 procedure TForm1.Button1Click(Sender: TObject);var I: Integer;begin 普通代碼中拋出異常 I := -1; if
60、0;I < 0 then raise exception.Create('整數(shù)不能小于 0'); ShowMessage('異常被拋出后.');end; raise 拋出異常 procedure TForm1.Button1Click(Sender: TObject);var I: Integer; S: string;begin try except 中拋出異常 try
61、0; S := '123A' I := StrToInt(S); except on E: exception do raise exception.Create(E.Message); end; ShowMessage('異常被拋出后.');end;- 名稱:【procedure】
62、、【function】、【forward】、【out】 功能:Delphi 函數(shù)、過程相關(guān)關(guān)鍵字。 procedure :定義過程,過程無返回值。主要用來執(zhí)行一系列動作。還可以用來聲 明自定義函數(shù)類型。 function :定義函數(shù),函數(shù)有返回值。主要用來計(jì)算某一結(jié)果。還可以用來聲明
63、160; 自定義函數(shù)類型。 forward :用于函數(shù)(或過程)的前置聲明,這樣可以使代碼中“較先實(shí)現(xiàn)的函數(shù) ”可 以調(diào)用“較后實(shí)現(xiàn)的函數(shù)”,如果“較后實(shí)現(xiàn)的函數(shù)”不做前置聲明,則它不 能被前面的函數(shù)調(diào)用。 out :定義函數(shù)(或過程)的參
64、數(shù)為傳出類型,out 類型的參數(shù)用來將函數(shù)的執(zhí)行 結(jié)果通過此參數(shù)返回給調(diào)用者(傳地參數(shù))。調(diào)用者在調(diào)用函數(shù)時(shí),不需要給 out 類型的參數(shù)賦值,賦了也沒用。 還有之前提到的一個(gè)關(guān)鍵字 var :定義函數(shù)(或過程)的參數(shù)為傳址類型,var 類型的參數(shù)在函數(shù)內(nèi)的一切改
65、變都會返回給調(diào)用者,調(diào)用者也可以在調(diào)用函數(shù)前, 給 var 參數(shù)賦值,然后傳遞到函數(shù)里面使用。- 函數(shù)前置聲明 function CalcPerimeter(R: Double): Double; forward;function CalcArea(R: Double): Double; forward; 過程:執(zhí)行一系列動作,顯示圓的半徑、周長、面積信息 procedure ShowInfo(Radius: Double);var sRadius:
66、 string; sPerimeter: string; sArea: string;begin sRadius := FloatToStr(Radius); 如果不做前置聲明,則這里無法調(diào)用 CalcPerimeter sPerimeter := FloatToStr(CalcPerimeter(Radius); 如果不做前置聲明,則這里無法調(diào)用 CalcArea sArea := FloatToStr(CalcArea(Radius);
67、ShowMessage('半徑:' + sRadius + #13#10 + '周長:' + sPerimeter + #13#10 + '面積:' + sArea);end; 函數(shù):計(jì)算圓的周長 function CalcPerimeter(R: Double): Double;begin 2 乘以 派 乘以 半徑,Pi 是系統(tǒng)函數(shù),計(jì)算圓周率 Result :=
68、;2 * Pi * R;end; 函數(shù):計(jì)算圓的面積 function CalcArea(R: Double): Double;begin 派 乘以 半徑的平方,Pi 是系統(tǒng)函數(shù),計(jì)算圓周率 Result := Pi * R * R;end;procedure TForm1.Button1Click(Sender: TObject);begin ShowInfo(10.5); ShowInfo(30.25);end;- 聲明自定義函數(shù)類型 TMyFunc type TMyFunc = function(I: Integer): Integer; 某個(gè)函數(shù) function GetCountNum(Num: Integer): Integer;var I: Integer;begin Result := 0; for I := 0 to Num do begin
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- KTV營業(yè)權(quán)轉(zhuǎn)讓及經(jīng)營合同版B版
- 二零二五版租賃房屋租賃保證金利息計(jì)算合同3篇
- 2025年度零投入的股權(quán)代持解除與轉(zhuǎn)讓協(xié)議
- 2025年針對普通員工的競業(yè)限制合同范本
- 二零二五年度智慧農(nóng)業(yè)版電路租用與物聯(lián)網(wǎng)應(yīng)用合同
- 2025年度蔬菜肉類市場風(fēng)險(xiǎn)預(yù)警與應(yīng)對合同
- 二零二五年度石灰粉產(chǎn)品售后服務(wù)與客戶關(guān)系管理合同
- 二零二五年度2025年度水利工程土方挖掘承包協(xié)議
- 2025版企業(yè)職工養(yǎng)老保險(xiǎn)補(bǔ)貼專項(xiàng)資金分配與管理合同3篇
- 《院外急救ywjj》課件
- 三角形與全等三角形復(fù)習(xí)教案 人教版
- 2024年1月高考適應(yīng)性測試“九省聯(lián)考”英語 試題(學(xué)生版+解析版)
- 《朝天子·詠喇叭-王磐》核心素養(yǎng)目標(biāo)教學(xué)設(shè)計(jì)、教材分析與教學(xué)反思-2023-2024學(xué)年初中語文統(tǒng)編版
- 成長小說智慧樹知到期末考試答案2024年
- 紅色革命故事《王二小的故事》
- 海洋工程用高性能建筑鋼材的研發(fā)
- 英語48個(gè)國際音標(biāo)課件(單詞帶聲、附有聲國際音標(biāo)圖)
- GB/T 6892-2023一般工業(yè)用鋁及鋁合金擠壓型材
- 冷庫安全管理制度
- 2023同等學(xué)力申碩統(tǒng)考英語考試真題
- 家具安裝工培訓(xùn)教案優(yōu)質(zhì)資料
評論
0/150
提交評論