Trang chủ
Bài viết mới
Diễn đàn
Bài mới trên hồ sơ
Hoạt động mới nhất
VIDEO
Mùa Tết
Văn Học Trẻ
Văn Học News
Media
New media
New comments
Search media
Đại Học
Đại cương
Chuyên ngành
Triết học
Kinh tế
KHXH & NV
Công nghệ thông tin
Khoa học kĩ thuật
Luận văn, tiểu luận
Phổ Thông
Lớp 12
Ngữ văn 12
Lớp 11
Ngữ văn 11
Lớp 10
Ngữ văn 10
LỚP 9
Ngữ văn 9
Lớp 8
Ngữ văn 8
Lớp 7
Ngữ văn 7
Lớp 6
Ngữ văn 6
Tiểu học
Thành viên
Thành viên trực tuyến
Bài mới trên hồ sơ
Tìm trong hồ sơ cá nhân
Credits
Transactions
Xu: 0
Đăng nhập
Đăng ký
Có gì mới?
Tìm kiếm
Tìm kiếm
Chỉ tìm trong tiêu đề
Bởi:
Hoạt động mới nhất
Đăng ký
Menu
Đăng nhập
Đăng ký
Install the app
Cài đặt
Chào mừng Bạn tham gia Diễn Đàn VNKienThuc.com -
Định hướng Forum
Kiến Thức
- HÃY TẠO CHỦ ĐỀ KIẾN THỨC HỮU ÍCH VÀ CÙNG NHAU THẢO LUẬN Kết nối:
VNK X
-
VNK groups
| Nhà Tài Trợ:
BhnongFood X
-
Bhnong groups
-
Đặt mua Bánh Bhnong
CÔNG NGHỆ
Công Nghệ Thông Tin
Code
Tìm hiểu cấu trúc trong C#
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Trả lời chủ đề
Nội dung
<blockquote data-quote="uocmo_kchodoi" data-source="post: 177532" data-attributes="member: 165510"><p style="text-align: center"><strong><span style="color: #ff0000">CẤU TRÚC (STRUCT) TRONG C#</span></strong></p> <p style="text-align: center"></p><p><strong>Khái niệm:</strong> Struct là một kiểu dữ liệu có cấu trúc, được kết hợp từ các kiểu dữ liệu nguyên thuỷ do người lập trình định nghĩa để thuận tiện trong việc quản lý dữ liệu và lập trình. Nó giúp bạn tạo một biến đơn mà giữ dữ liệu liên quan của các kiểu dữ liệu đa dạng. Từ khóa struct trong C# được sử dụng để tạo một cấu trúc (structure).</p><p></p><p>Các cấu trúc được sử dụng để biểu diễn một bản ghi (record). Giả sử bạn muốn theo dõi các cuốn sách trong một thư viện. Bạn có thể muốn theo dõi các thuộc tính sau của mỗi cuốn sách:</p><ul> <li data-xf-list-type="ul">Tên sách</li> <li data-xf-list-type="ul">Tác giả</li> <li data-xf-list-type="ul">Thể loại</li> <li data-xf-list-type="ul">ID (mã sách)</li> </ul><p><span style="font-size: 18px"><span style="color: #0000ff"><strong>1. Định nghĩa cấu trúc trong C#</strong></span></span></p><p></p><p>Để định nghĩa cấu trúc, bạn phải sử dụng lệnh struct. Câu lệnh struct định nghĩa một kiểu dữ liệu mới, với hơn một thành viên trong chương trình của bạn.</p><p></p><p>Ví dụ dưới đây là cách bạn khai báo cấu trúc Book:</p><p></p><p>struct Books</p><p>{</p><p> public string ten_sach;</p><p> public string tac_gia;</p><p> public string the_loai;</p><p> public int ma_sach;</p><p>}; </p><p>Chương trình sau minh họa cách sử dụng cấu trúc trên trong C#:</p><p></p><p><span style="color: #5900b3"><em>using System;</em></span></p><p><span style="color: #5900b3"><em>//cau truc book</em></span></p><p><span style="color: #5900b3"><em>struct Book</em></span></p><p><span style="color: #5900b3"><em>{</em></span></p><p><span style="color: #5900b3"><em> public string ten_sach;</em></span></p><p><span style="color: #5900b3"><em> public string tac_gia;</em></span></p><p><span style="color: #5900b3"><em> public string the_loai;</em></span></p><p><span style="color: #5900b3"><em> public int ma_sach;</em></span></p><p><span style="color: #5900b3"><em>};</em></span></p><p><span style="color: #5900b3"></span></p><p><span style="color: #5900b3"><em>namespace VietJackCsharp</em></span></p><p><span style="color: #5900b3"><em>{</em></span></p><p><span style="color: #5900b3"><em> class TestCsharp</em></span></p><p><span style="color: #5900b3"><em> {</em></span></p><p><span style="color: #5900b3"><em> static void Main(string[] args)</em></span></p><p><span style="color: #5900b3"><em> {</em></span></p><p><span style="color: #5900b3"><em> Console.WriteLine("Struct trong C#");</em></span></p><p><span style="color: #5900b3"><em> Console.WriteLine("----------------------------\n");</em></span></p><p><span style="color: #5900b3"></span></p><p><span style="color: #5900b3"><em> Book Book1; /* khai bao Book1 thuoc kieu cau truc Book */</em></span></p><p><span style="color: #5900b3"><em> Book Book2; /* khai bao Book2 thuoc kieu cau truc Book */</em></span></p><p><span style="color: #5900b3"></span></p><p><span style="color: #5900b3"><em> /* thong tin chi tiet ve Book1 */</em></span></p><p><span style="color: #5900b3"><em> Book1.ten_sach = "English Grammar in Use";</em></span></p><p><span style="color: #5900b3"><em> Book1.tac_gia = "Raymond Murphy";</em></span></p><p><span style="color: #5900b3"><em> Book1.the_loai = "Tieng Anh";</em></span></p><p><span style="color: #5900b3"><em> Book1.ma_sach = 6495407;</em></span></p><p><span style="color: #5900b3"></span></p><p><span style="color: #5900b3"><em> /* thong tin chi tiet ve Book2 */</em></span></p><p><span style="color: #5900b3"><em> Book2.ten_sach = "Toan hoc cao cap";</em></span></p><p><span style="color: #5900b3"><em> Book2.tac_gia = "Tran Van A";</em></span></p><p><span style="color: #5900b3"><em> Book2.the_loai = "Toan hoc";</em></span></p><p><span style="color: #5900b3"><em> Book2.ma_sach = 6495700;</em></span></p><p><span style="color: #5900b3"></span></p><p><span style="color: #5900b3"><em> /* in cac thong tin cua Book1*/</em></span></p><p><span style="color: #5900b3"><em> Console.WriteLine("In thong tin cua cuon sach 1:");</em></span></p><p><span style="color: #5900b3"><em> Console.WriteLine("Ten sach: {0}", Book1.ten_sach);</em></span></p><p><span style="color: #5900b3"><em> Console.WriteLine("Tac gia: {0}", Book1.tac_gia);</em></span></p><p><span style="color: #5900b3"><em> Console.WriteLi</em></span><em><span style="color: #5900b3">ne("The loai: {0}", Book1.the_loai);</span></em></p><p><em><span style="color: #5900b3"> Console.WriteLine("Ma sach: {0}", Book1.ma_sach);</span></em></p><p><em><span style="color: #5900b3"></span></em></p><p><em><span style="color: #5900b3"> /* in cac thong tin cua Book2 */</span></em></p><p><em><span style="color: #5900b3"> Console.WriteLine("\nIn thong tin cua cuon sach 2:");</span></em></p><p><em><span style="color: #5900b3"> Console.WriteLine("Ten sach: {0}", Book2.ten_sach);</span></em></p><p><em><span style="color: #5900b3"> Console.WriteLine("Tac gia: {0}", Book2.tac_gia);</span></em></p><p><em><span style="color: #5900b3"> Console.WriteLine("The loai: {0}", Book2.the_loai);</span></em></p><p><em><span style="color: #5900b3"> Console.WriteLine("Ma sach: {0}", Book2.ma_sach);</span></em></p><p><em><span style="color: #5900b3"></span></em></p><p><em><span style="color: #5900b3"> Console.ReadKey();</span></em></p><p><em><span style="color: #5900b3"> }</span></em></p><p><em><span style="color: #5900b3"> }</span></em></p><p><em><span style="color: #5900b3">}</span></em></p><p>Nếu bạn không sử dụng lệnh Console.ReadKey(); thì chương trình sẽ chạy và kết thúc luôn (nhanh quá đến nỗi bạn không kịp nhìn kết quả). Lệnh này cho phép chúng ta nhìn kết quả một cách rõ ràng hơn.</p><p></p><p><span style="font-size: 18px"><span style="color: #0000ff"><strong>2. Đặc điểm của cấu trúc trong C#</strong></span></span></p><p><span style="font-size: 18px"><span style="color: #0000ff"></span></span></p><p>Ở trên, bạn đã sử dụng một cấu trúc Books đơn giản. Các cấu trúc trong C# là khá khác với kiểu cấu trúc truyền thống trong C hoặc C++. Cấu trúc trong C# có các đặc điểm sau:</p><ul> <li data-xf-list-type="ul">Cấu trúc có thể có các phương thức, các trường, indexer, thuộc tính, phương thức operator, và sự kiện.<br /> <br /> </li> <li data-xf-list-type="ul">Cấu trúc có thể có các constructor đã được định nghĩa, nhưng không có destructor. Tuy nhiên, bạn không thể định nghĩa một constructor mặc định cho một cấu trúc. Constructor mặc định được định nghĩa tự động và không thể bị thay đổi.<br /> <br /> </li> <li data-xf-list-type="ul">Không giống các Lớp, cấu trúc không thể kế thừa từ cấu trúc hoặc lớp khác.<br /> <br /> </li> <li data-xf-list-type="ul">Cấu trúc không thể được sử dụng như là một cơ sở cho cấu trúc hoặc lớp khác.<br /> <br /> </li> <li data-xf-list-type="ul">Một cấu trúc có thể triển khai một hoặc nhiều Interface.<br /> <br /> </li> <li data-xf-list-type="ul">Thành viên cấu trúc không thể được xác định ở dạng abstract, virtual, hoặc protected.<br /> <br /> </li> <li data-xf-list-type="ul">Khi bạn tạo một đối tượng Struct bởi sử dụng toán tử new, nó lấy đối tượng đã tạo và constructor thích hợp được gọi. Không giống Lớp, cấu trúc có thể được khởi tạo mà không cần sử dụng toán tử new.<br /> <br /> </li> <li data-xf-list-type="ul">Nếu toán tử new không được sử dụng, thì các trường chưa được gán và đối tượng không thể được sử dụng tới khi tất cả trường đó được khởi tạo.</li> </ul><p><span style="font-size: 18px"><span style="color: #0000ff"><strong>3. Phân biệt Class và Structure trong C#</strong></span></span></p><p><span style="font-size: 18px"><span style="color: #0000ff"></span></span></p><p>Lớp và Cấu trúc trong C# có một số điểm khác nhau cơ bản sau:</p><ul> <li data-xf-list-type="ul">Các Lớp là các kiểu tham chiếu, còn cấu trúc là các kiểu giá trị.<br /> <br /> </li> <li data-xf-list-type="ul">Cấu trúc không hỗ trợ tính kế thừa.<br /> <br /> </li> <li data-xf-list-type="ul">Cấu trúc không có constructor mặc định.</li> </ul><p>Từ các điểm trên, chúng ta viết lại ví dụ trên:</p><p></p><p><em><span style="color: #5900b3">using System;</span></em></p><p><em><span style="color: #5900b3">struct Book</span></em></p><p><em><span style="color: #5900b3">{</span></em></p><p><em><span style="color: #5900b3"> private string ten_sach;</span></em></p><p><em><span style="color: #5900b3"> private string tac_gia;</span></em></p><p><em><span style="color: #5900b3"> private string the_loai;</span></em></p><p><em><span style="color: #5900b3"> private int ma_sach;</span></em></p><p><em><span style="color: #5900b3"> public void nhapGiaTri(string t, string a, string s, int id)</span></em></p><p><em><span style="color: #5900b3"> {</span></em></p><p><em><span style="color: #5900b3"> ten_sach = t;</span></em></p><p><em><span style="color: #5900b3"> tac_gia = a;</span></em></p><p><em><span style="color: #5900b3"> the_loai = s;</span></em></p><p><em><span style="color: #5900b3"> ma_sach = id;</span></em></p><p><em><span style="color: #5900b3"> }</span></em></p><p><em><span style="color: #5900b3"> public void display()</span></em></p><p><em><span style="color: #5900b3"> {</span></em></p><p><em><span style="color: #5900b3"> Console.WriteLine("Tieu de: {0}", ten_sach);</span></em></p><p><em><span style="color: #5900b3"> Console.WriteLine("Tac gia: {0}", tac_gia);</span></em></p><p><em><span style="color: #5900b3"> Console.WriteLine("The loai: {0}", the_loai);</span></em></p><p><em><span style="color: #5900b3"> Console.WriteLine("Ma sach: {0}", ma_sach);</span></em></p><p><em><span style="color: #5900b3"> }</span></em></p><p><em><span style="color: #5900b3"></span></em></p><p><em><span style="color: #5900b3">};</span></em></p><p><em><span style="color: #5900b3"></span></em></p><p><em><span style="color: #5900b3">public class TestCsharp</span></em></p><p><em><span style="color: #5900b3">{</span></em></p><p><em><span style="color: #5900b3"> public static void Main(string[] args)</span></em></p><p><em><span style="color: #5900b3"> {</span></em></p><p><em><span style="color: #5900b3"> Console.WriteLine("Struct trong C#");</span></em></p><p><em><span style="color: #5900b3"> Console.WriteLine("------------------------\n");</span></em></p><p><em><span style="color: #5900b3"> Book Book1 = new Book(); /* Khai bao Book1 thuoc kieu cau truc Book */</span></em></p><p><em><span style="color: #5900b3"> Book Book2 = new Book(); /* Khai bao Book2 thuoc kieu cau truc Book */</span></em></p><p><em><span style="color: #5900b3"></span></em></p><p><em><span style="color: #5900b3"> /* thong tin Book1 */</span></em></p><p><em><span style="color: #5900b3"> Book1.nhapGiaTri("English Grammer in Use",</span></em></p><p><em><span style="color: #5900b3"> "Raymond Murphy", "Tieng Anh", 6495407);</span></em></p><p><em><span style="color: #5900b3"></span></em></p><p><em><span style="color: #5900b3"> /* thong tin book2 */</span></em></p><p><em><span style="color: #5900b3"> Book2.nhapGiaTri("Toan hoc cao cap",</span></em></p><p><em><span style="color: #5900b3"> "Tran Van A", "Toan hoc", 6495700);</span></em></p><p><em><span style="color: #5900b3"></span></em></p><p><em><span style="color: #5900b3"> /* In thong tin Book1 */</span></em></p><p><em><span style="color: #5900b3"> Console.WriteLine("In thong tin cua cuon sach 1:");</span></em></p><p><em><span style="color: #5900b3"> Book1.display();</span></em></p><p><em><span style="color: #5900b3"></span></em></p><p><em><span style="color: #5900b3"> /* In thong tin Book2 */</span></em></p><p><em><span style="color: #5900b3"> Console.WriteLine("\nIn thong tin cua cuon sach 2:");</span></em></p><p><em><span style="color: #5900b3"> Book2.display();</span></em></p><p><em><span style="color: #5900b3"></span></em></p><p><em><span style="color: #5900b3"> Console.ReadKey();</span></em></p><p><em><span style="color: #5900b3"></span></em></p><p><em><span style="color: #5900b3"> }</span></em></p><p><em><span style="color: #5900b3">}</span></em></p><p>Nếu bạn không sử dụng lệnh Console.ReadKey(); thì chương trình sẽ chạy và kết thúc luôn (nhanh quá đến nỗi bạn không kịp nhìn kết quả). Lệnh này cho phép chúng ta nhìn kết quả một cách rõ ràng hơn.</p><p></p><p>Vậy là mình đã hướng dẫn xong về phần struck. Còn rất nhiều kiến thức thú vị về C# trên vnkienthuc.com đang chờ bạn khám phá. Chúc các bạn học tập và làm việc hiệu quả nhé!</p><p></p><p style="text-align: right">Nguồn: vietjack.com</p></blockquote><p></p>
[QUOTE="uocmo_kchodoi, post: 177532, member: 165510"] [CENTER][B][COLOR=#ff0000]CẤU TRÚC (STRUCT) TRONG C#[/COLOR][/B] [COLOR=#ff0000][/COLOR][/CENTER] [B]Khái niệm:[/B] Struct là một kiểu dữ liệu có cấu trúc, được kết hợp từ các kiểu dữ liệu nguyên thuỷ do người lập trình định nghĩa để thuận tiện trong việc quản lý dữ liệu và lập trình.[B] [/B]Nó giúp bạn tạo một biến đơn mà giữ dữ liệu liên quan của các kiểu dữ liệu đa dạng. Từ khóa struct trong C# được sử dụng để tạo một cấu trúc (structure). Các cấu trúc được sử dụng để biểu diễn một bản ghi (record). Giả sử bạn muốn theo dõi các cuốn sách trong một thư viện. Bạn có thể muốn theo dõi các thuộc tính sau của mỗi cuốn sách: [LIST] [*]Tên sách [*]Tác giả [*]Thể loại [*]ID (mã sách) [/LIST] [SIZE=5][COLOR=#0000ff][B]1. Định nghĩa cấu trúc trong C#[/B][/COLOR][/SIZE] Để định nghĩa cấu trúc, bạn phải sử dụng lệnh struct. Câu lệnh struct định nghĩa một kiểu dữ liệu mới, với hơn một thành viên trong chương trình của bạn. Ví dụ dưới đây là cách bạn khai báo cấu trúc Book: struct Books { public string ten_sach; public string tac_gia; public string the_loai; public int ma_sach; }; Chương trình sau minh họa cách sử dụng cấu trúc trên trong C#: [COLOR=#5900b3][I]using System;[/I] [I]//cau truc book[/I] [I]struct Book[/I] [I]{[/I] [I] public string ten_sach;[/I] [I] public string tac_gia;[/I] [I] public string the_loai;[/I] [I] public int ma_sach;[/I] [I]};[/I] [I][/I] [I]namespace VietJackCsharp[/I] [I]{[/I] [I] class TestCsharp[/I] [I] {[/I] [I] static void Main(string[] args)[/I] [I] {[/I] [I] Console.WriteLine("Struct trong C#");[/I] [I] Console.WriteLine("----------------------------\n");[/I] [I][/I] [I] Book Book1; /* khai bao Book1 thuoc kieu cau truc Book */[/I] [I] Book Book2; /* khai bao Book2 thuoc kieu cau truc Book */[/I] [I][/I] [I] /* thong tin chi tiet ve Book1 */[/I] [I] Book1.ten_sach = "English Grammar in Use";[/I] [I] Book1.tac_gia = "Raymond Murphy";[/I] [I] Book1.the_loai = "Tieng Anh";[/I] [I] Book1.ma_sach = 6495407;[/I] [I][/I] [I] /* thong tin chi tiet ve Book2 */[/I] [I] Book2.ten_sach = "Toan hoc cao cap";[/I] [I] Book2.tac_gia = "Tran Van A";[/I] [I] Book2.the_loai = "Toan hoc";[/I] [I] Book2.ma_sach = 6495700;[/I] [I][/I] [I] /* in cac thong tin cua Book1*/[/I] [I] Console.WriteLine("In thong tin cua cuon sach 1:");[/I] [I] Console.WriteLine("Ten sach: {0}", Book1.ten_sach);[/I] [I] Console.WriteLine("Tac gia: {0}", Book1.tac_gia);[/I] [I] Console.WriteLi[/I][/COLOR][I][COLOR=#5900b3]ne("The loai: {0}", Book1.the_loai); Console.WriteLine("Ma sach: {0}", Book1.ma_sach); /* in cac thong tin cua Book2 */ Console.WriteLine("\nIn thong tin cua cuon sach 2:"); Console.WriteLine("Ten sach: {0}", Book2.ten_sach); Console.WriteLine("Tac gia: {0}", Book2.tac_gia); Console.WriteLine("The loai: {0}", Book2.the_loai); Console.WriteLine("Ma sach: {0}", Book2.ma_sach); Console.ReadKey(); } } }[/COLOR][/I] Nếu bạn không sử dụng lệnh Console.ReadKey(); thì chương trình sẽ chạy và kết thúc luôn (nhanh quá đến nỗi bạn không kịp nhìn kết quả). Lệnh này cho phép chúng ta nhìn kết quả một cách rõ ràng hơn. [SIZE=5][COLOR=#0000ff][B]2. Đặc điểm của cấu trúc trong C#[/B] [B][/B][/COLOR][/SIZE] Ở trên, bạn đã sử dụng một cấu trúc Books đơn giản. Các cấu trúc trong C# là khá khác với kiểu cấu trúc truyền thống trong C hoặc C++. Cấu trúc trong C# có các đặc điểm sau: [LIST] [*]Cấu trúc có thể có các phương thức, các trường, indexer, thuộc tính, phương thức operator, và sự kiện. [*]Cấu trúc có thể có các constructor đã được định nghĩa, nhưng không có destructor. Tuy nhiên, bạn không thể định nghĩa một constructor mặc định cho một cấu trúc. Constructor mặc định được định nghĩa tự động và không thể bị thay đổi. [*]Không giống các Lớp, cấu trúc không thể kế thừa từ cấu trúc hoặc lớp khác. [*]Cấu trúc không thể được sử dụng như là một cơ sở cho cấu trúc hoặc lớp khác. [*]Một cấu trúc có thể triển khai một hoặc nhiều Interface. [*]Thành viên cấu trúc không thể được xác định ở dạng abstract, virtual, hoặc protected. [*]Khi bạn tạo một đối tượng Struct bởi sử dụng toán tử new, nó lấy đối tượng đã tạo và constructor thích hợp được gọi. Không giống Lớp, cấu trúc có thể được khởi tạo mà không cần sử dụng toán tử new. [*]Nếu toán tử new không được sử dụng, thì các trường chưa được gán và đối tượng không thể được sử dụng tới khi tất cả trường đó được khởi tạo. [/LIST] [SIZE=5][COLOR=#0000ff][B]3. Phân biệt Class và Structure trong C#[/B] [B][/B][/COLOR][/SIZE] Lớp và Cấu trúc trong C# có một số điểm khác nhau cơ bản sau: [LIST] [*]Các Lớp là các kiểu tham chiếu, còn cấu trúc là các kiểu giá trị. [*]Cấu trúc không hỗ trợ tính kế thừa. [*]Cấu trúc không có constructor mặc định. [/LIST] Từ các điểm trên, chúng ta viết lại ví dụ trên: [I][COLOR=#5900b3]using System; struct Book { private string ten_sach; private string tac_gia; private string the_loai; private int ma_sach; public void nhapGiaTri(string t, string a, string s, int id) { ten_sach = t; tac_gia = a; the_loai = s; ma_sach = id; } public void display() { Console.WriteLine("Tieu de: {0}", ten_sach); Console.WriteLine("Tac gia: {0}", tac_gia); Console.WriteLine("The loai: {0}", the_loai); Console.WriteLine("Ma sach: {0}", ma_sach); } }; public class TestCsharp { public static void Main(string[] args) { Console.WriteLine("Struct trong C#"); Console.WriteLine("------------------------\n"); Book Book1 = new Book(); /* Khai bao Book1 thuoc kieu cau truc Book */ Book Book2 = new Book(); /* Khai bao Book2 thuoc kieu cau truc Book */ /* thong tin Book1 */ Book1.nhapGiaTri("English Grammer in Use", "Raymond Murphy", "Tieng Anh", 6495407); /* thong tin book2 */ Book2.nhapGiaTri("Toan hoc cao cap", "Tran Van A", "Toan hoc", 6495700); /* In thong tin Book1 */ Console.WriteLine("In thong tin cua cuon sach 1:"); Book1.display(); /* In thong tin Book2 */ Console.WriteLine("\nIn thong tin cua cuon sach 2:"); Book2.display(); Console.ReadKey(); } }[/COLOR][/I] Nếu bạn không sử dụng lệnh Console.ReadKey(); thì chương trình sẽ chạy và kết thúc luôn (nhanh quá đến nỗi bạn không kịp nhìn kết quả). Lệnh này cho phép chúng ta nhìn kết quả một cách rõ ràng hơn. Vậy là mình đã hướng dẫn xong về phần struck. Còn rất nhiều kiến thức thú vị về C# trên vnkienthuc.com đang chờ bạn khám phá. Chúc các bạn học tập và làm việc hiệu quả nhé! [RIGHT]Nguồn: vietjack.com[/RIGHT] [/QUOTE]
Tên
Mã xác nhận
Gửi trả lời
CÔNG NGHỆ
Công Nghệ Thông Tin
Code
Tìm hiểu cấu trúc trong C#
Top