Những chủ đề tiến bộ trong C# - Các chỉ thị tiền xử lí trong C#
Số trang: 6
Loại file: pdf
Dung lượng: 96.50 KB
Lượt xem: 14
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bên cạnh các từ khoá thường dùng, C# có 1 số lệnh tiền xử lí .những lệnh này không bao giờ được biên dịch thành bất kì dòng lệnh nào trong mã thực thi. thay vào đó nó có ảnh hưởng đến các khía cạnh của quy trình biên dịch. ví dụ , ta có thể dùng chỉ dẫn tiền xử lí để ngăn trình biên dịch biên dịch một phần đoạn mã nào đó .
Nội dung trích xuất từ tài liệu:
Những chủ đề tiến bộ trong C# - Các chỉ thị tiền xử lí trong C# Những chủ đề tiến bộ trong C# Các chỉ thị tiền xử lí trong C#Bên cạnh các từ khoá thường dùng, C# có 1 số lệnh tiền xử lí .những lệnhnày không bao giờ được biên dịch thành bất kì dòng lệnh nào trong mã thựcthi. thay vào đó nó có ảnh hưởng đến các khía cạnh của quy trình biên dịch.ví dụ , ta có thể dùng chỉ dẫn tiền xử lí để ngăn trình biên dịch biên dịch mộtphần đoạn mã nào đó .Chỉ thị tiền xử lí được phân biệt bằng cách bắt đầu với dấu # .#define và #undef#define được dùng ví dụ như :#define DEBUGCho trình biên dịch biết biểu tượng với tên được đặt ( DEBUG) tồn tại. nóhơi giống như khai báo biến nhưng nó không có giá trị - mà chỉ tồn tại.Trái ngược với #define là #undef : bỏ định nghĩa biểu tượng : #undefDEBUGTa cần đặt các chỉ thị #define và #undef vào đầu tập tin nguồn trước bất kìkhai báo đối tượng được biên dịch.lưu ý : các chỉ thị tiền xử lí không có dấu ; ở cuối câu lệnh thường thì cáclệnh chỉ trên 1 dòng . nếu nó thấy 1 chỉ thị tiền xử lí, nó xem lệnh kết tiếp sẽnằm ở dòng kế tiếp.#if,#elif,#else,#endifcác chỉ thị này thông báo cho trình biên dịch biết liệu có biên dịch đoạn mãhay không, ví dụ :int DoSomeWork(double x) { // do something #if DEBUG Console.WriteLine(x is + x); #endif }Dòng lệnh Console.Writeline chỉ được thực hiện khi DEBUG được địnhnghĩa.( bằng chỉ thị #define). khi thấy #if nó kiểm tra xem biểu tượng có tồntại hay không nếu có thì biên dịch đoạn mã bên trong ngược lại bỏ qua đoạnmã bên trong giữa #if và #endif. ta dùng cách này khi muốn vá lỗi, mà lỗiliên quan đến đoạn mã trong #if ,khi muốn đoạn mã này chạy ta định nghĩaDEBUG, khi muốn nó không chạy ta #undef DEBUG,kích cỡ cũa tập tinthực thi sẽ nhỏ hơn.Các chỉ thị #elif (= else if ) và # else được dùng trong khối #if .và có thểlồng khối #if#define ENTERPRISE#define W2K// further on in the file#if ENTERPRISE // do something #if W2K // some code that is only relevant to enterprise // edition running on W2K #endif#elif PROFESSIONAL // do something else#else // code for the leaner version#endif#if và #elif cũng hổ trợ 1 số tác tử luận lý , dùng !,==,!=,||. 1 biểu tượng làtrue nếu nó tồn tại và ngược lại là false. ví dụ :#if W2K && (ENTERPRISE==false) // nếu W2K đưọc định nghĩa cònENTERPRISE thì không#warning và #errorNếu trình biên dịch thấy #warning nó sẽ trình bày chuỗi xuất iện phía sau nóđến người dùng,sau đó biên dịch tiếp. nếu thấy chỉ thi #error ,nó sẽ trình bàychuỗi con đến người dùng nếu đó là 1 thông báo lỗi biên dịch , sau đó ngừngbiên dịch#if DEBUG && RELEASE#error Youve defined DEBUG and RELEASE simultaneously! #endif#warning Dont forget to remove this line before the boss tests the code! Console.WriteLine(*I hate this job*);#region và #endregionCác chỉ thị #region và #endregion đưọc dùng để đánh dấu khối mã đượcxem như là khối đơn với tên được đặt như :#region Member Field Declarationsint x;double d;Currency balance;#endregionchỉ thị này không có ảnh hưởng nào đến trình biên dịch nhưng nó hữu íchcho 1 số trình biên tập bao gồm cả trình biên tập của VS.NET. trình biên tậpcó thể dùng chỉ thị naỳ để gói gọn mã của ta trên màn hình.# linechỉ thị #line có thể được dùng thay cho tên tập tin và thông tin số dòng màxuất bởi trình biên dịch trong các thông báo cảnh báo hay lỗi .nó thườngdùng khi bạn viết mã kết hợp với 1 số gói khác mà sau đó sẽ thay đoạn mãbạn gõ vào trước khi biên dịch ,trình biên dịch sẽ thông báo số dòng và têntập tin không phù hợp với số dòng trong tập tin mà bạn đang chỉnh sửa .chỉthị #line có thể được dùng để lưu sự phù hợp. ta cũng có thể dùng cú pháp#line default để lưu dòng thành số dòng mặc định :#line 164 Core.cs // we happen to know this is line 164 in the file// Core.cs, before the intermediate// package mangles it.// later on#line default // restores default line numbering ...
Nội dung trích xuất từ tài liệu:
Những chủ đề tiến bộ trong C# - Các chỉ thị tiền xử lí trong C# Những chủ đề tiến bộ trong C# Các chỉ thị tiền xử lí trong C#Bên cạnh các từ khoá thường dùng, C# có 1 số lệnh tiền xử lí .những lệnhnày không bao giờ được biên dịch thành bất kì dòng lệnh nào trong mã thựcthi. thay vào đó nó có ảnh hưởng đến các khía cạnh của quy trình biên dịch.ví dụ , ta có thể dùng chỉ dẫn tiền xử lí để ngăn trình biên dịch biên dịch mộtphần đoạn mã nào đó .Chỉ thị tiền xử lí được phân biệt bằng cách bắt đầu với dấu # .#define và #undef#define được dùng ví dụ như :#define DEBUGCho trình biên dịch biết biểu tượng với tên được đặt ( DEBUG) tồn tại. nóhơi giống như khai báo biến nhưng nó không có giá trị - mà chỉ tồn tại.Trái ngược với #define là #undef : bỏ định nghĩa biểu tượng : #undefDEBUGTa cần đặt các chỉ thị #define và #undef vào đầu tập tin nguồn trước bất kìkhai báo đối tượng được biên dịch.lưu ý : các chỉ thị tiền xử lí không có dấu ; ở cuối câu lệnh thường thì cáclệnh chỉ trên 1 dòng . nếu nó thấy 1 chỉ thị tiền xử lí, nó xem lệnh kết tiếp sẽnằm ở dòng kế tiếp.#if,#elif,#else,#endifcác chỉ thị này thông báo cho trình biên dịch biết liệu có biên dịch đoạn mãhay không, ví dụ :int DoSomeWork(double x) { // do something #if DEBUG Console.WriteLine(x is + x); #endif }Dòng lệnh Console.Writeline chỉ được thực hiện khi DEBUG được địnhnghĩa.( bằng chỉ thị #define). khi thấy #if nó kiểm tra xem biểu tượng có tồntại hay không nếu có thì biên dịch đoạn mã bên trong ngược lại bỏ qua đoạnmã bên trong giữa #if và #endif. ta dùng cách này khi muốn vá lỗi, mà lỗiliên quan đến đoạn mã trong #if ,khi muốn đoạn mã này chạy ta định nghĩaDEBUG, khi muốn nó không chạy ta #undef DEBUG,kích cỡ cũa tập tinthực thi sẽ nhỏ hơn.Các chỉ thị #elif (= else if ) và # else được dùng trong khối #if .và có thểlồng khối #if#define ENTERPRISE#define W2K// further on in the file#if ENTERPRISE // do something #if W2K // some code that is only relevant to enterprise // edition running on W2K #endif#elif PROFESSIONAL // do something else#else // code for the leaner version#endif#if và #elif cũng hổ trợ 1 số tác tử luận lý , dùng !,==,!=,||. 1 biểu tượng làtrue nếu nó tồn tại và ngược lại là false. ví dụ :#if W2K && (ENTERPRISE==false) // nếu W2K đưọc định nghĩa cònENTERPRISE thì không#warning và #errorNếu trình biên dịch thấy #warning nó sẽ trình bày chuỗi xuất iện phía sau nóđến người dùng,sau đó biên dịch tiếp. nếu thấy chỉ thi #error ,nó sẽ trình bàychuỗi con đến người dùng nếu đó là 1 thông báo lỗi biên dịch , sau đó ngừngbiên dịch#if DEBUG && RELEASE#error Youve defined DEBUG and RELEASE simultaneously! #endif#warning Dont forget to remove this line before the boss tests the code! Console.WriteLine(*I hate this job*);#region và #endregionCác chỉ thị #region và #endregion đưọc dùng để đánh dấu khối mã đượcxem như là khối đơn với tên được đặt như :#region Member Field Declarationsint x;double d;Currency balance;#endregionchỉ thị này không có ảnh hưởng nào đến trình biên dịch nhưng nó hữu íchcho 1 số trình biên tập bao gồm cả trình biên tập của VS.NET. trình biên tậpcó thể dùng chỉ thị naỳ để gói gọn mã của ta trên màn hình.# linechỉ thị #line có thể được dùng thay cho tên tập tin và thông tin số dòng màxuất bởi trình biên dịch trong các thông báo cảnh báo hay lỗi .nó thườngdùng khi bạn viết mã kết hợp với 1 số gói khác mà sau đó sẽ thay đoạn mãbạn gõ vào trước khi biên dịch ,trình biên dịch sẽ thông báo số dòng và têntập tin không phù hợp với số dòng trong tập tin mà bạn đang chỉnh sửa .chỉthị #line có thể được dùng để lưu sự phù hợp. ta cũng có thể dùng cú pháp#line default để lưu dòng thành số dòng mặc định :#line 164 Core.cs // we happen to know this is line 164 in the file// Core.cs, before the intermediate// package mangles it.// later on#line default // restores default line numbering ...
Tìm kiếm theo từ khóa liên quan:
lập trình tài liệu lập trình kỹ thuật lập trình giáo trình C ngôn ngữ lập trình C tự học lập trình với CTài liệu liên quan:
-
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 266 0 0 -
NGÂN HÀNG CÂU HỎI TRẮC NGHIỆM THIẾT KẾ WEB
8 trang 208 0 0 -
101 trang 200 1 0
-
Giới thiệu môn học Ngôn ngữ lập trình C++
5 trang 195 0 0 -
Bài giảng Nhập môn về lập trình - Chương 1: Giới thiệu về máy tính và lập trình
30 trang 169 0 0 -
Luận văn: Nghiên cứu kỹ thuật giấu tin trong ảnh Gif
33 trang 153 0 0 -
Tìm hiểu về ngôn ngữ lập trình C: Phần 1 - Quách Tuấn Ngọc
211 trang 149 0 0 -
Giáo trình Lập trình C căn bản - HanoiAptech Computer Education Center
136 trang 134 0 0 -
161 trang 130 1 0
-
Báo cáo thực tập Công nghệ thông tin: Lập trình game trên Unity
27 trang 119 0 0