xin hỏi các đại cao thủ C# rằng C# có thừa kế cái template tuyệt vời của C++ không vậy ? nếu có thì xin cho 1 ít tài liệu tham khảo đi.
xin hỏi các đại cao thủ C# rằng C# có thừa kế cái template tuyệt vời của C++ không vậy ? nếu có thì xin cho 1 ít tài liệu tham khảo đi.
Hình như không có thì phải. C# nó bỏ cái lằng rằng ấy đi rồi. Tuy nhiên cái đó cũng rất mạnh
nó lằng nhằng ah, cực hữu dụng đấy, mà nếu C# bỏ nó thiệt rùi thì cũng tiếc thật, thui cám ơn hen nếu có thông tin gì dzề nó thì báo giúp 1 tiếng
Bỏ rồi nhưng có cái hay hơn, sự kết hợp giữa sức mạnh của Java với sự uyển chuyển của C++ và sự đơn giản củA Vb. Nhưng giờ đây trong VB.NET thì Vb, C#, C++, J# đều ngang nhau cả rồi
hà hà, bạn nói có cái hay hơn ah, vậy cho 1 đoạn code tương đương giữa C# và C++ đi, 1 bên xài cái bạn nói và 1 bên xài template
Tớ chỉ nhớ mang mạng template trong C++ có 1 phần dính đến truyền kiểu tham số không xác định. Bạn có thể thực hiện điều này thông qua:
- Sử dụng tham số có type là object
- dùng overload function
AFAIK, C++ compiler sinh ra mã từ template ở compile-time --> xài bao nhiêu kiểu khác nhau thì lượng mã được nhân lên bấy nhiêu lần (1 cho mỗi kiểu --> mã nhiều nhưng nhanh). Nguyên tắc này khiến cho template khác với giải pháp tham số object (1 mã --> mã ít nhưng chậm vì phải cast về kiểu cần dùng).Được gửi bởi White_Rose
dùng overload function thay cho template là vô nghĩa. Vì chính template được sinh ra để vượt qua những hạn chế của overload function (nhằm giảm thiểu code duplicating).
nghe nói Microsoft đang xem xét việc đưa template vào C# các phiên bản sau. Tin mừng cho những ai mê template của C++.
olala asm muôn năm.
wow, thiệt huh, coi bộ framework của MS càng ngày càng gây nghiện rùi ... :d
ai bảo bỏ nào, thử nghĩ xem nhé : ta có 1 hàm "int max(int a, int b)" lấy giá trị lớn nhất của 2 số, vậy thì ta cũng phải viết lại hàm với kiểu float, double hoặc với object nói chung ah. C# vẫn có cái đo:
cú pháp :
public class exp<T>
{
public override T max( T a, T b)
{
if a>b return a;
return b;
}
// tất nhiên là ta phải định nghĩa lại operator " > " ở các object khác nhau để sử dụng nó end.
tình hình mấy cái template trong c# vẫn còn
Bookmarks