Thực sự xem rất dễ hiểu, biết là học lập trình khó nhưng mà xem vid anh dạy so với những bài giảng trên giảng đường đhoc thì xem a dạy dễ hiểu hơn nhiều. Chúc a có nhiều sức khoẻ và kênh sẽ phát triển hơn nữa để giúp cho nhiều người có thể phát triển kỹ năng lập trình cho bản thân hơn
Công nhận xem hay và dễ hiểu thực sự luôn.Cảm ơn anh đã làm video OOP. Mong anh làm thêm về tính kế thừa, tính đa hình và tính trừu tượng ạ. Chúc anh một buổi chiều tốt lành ạ.
Chất lượng quá b ơi. Mình đang chuyển từ java c# sang học c++ mà thấy cú pháp nó khó thật, chưa kể oop 😥. Nma xem vid bạn mình hiểu dc tương đối nhiều. Tks bro❤️
e tìm trên web không có khóa học video lập trình hướng đối tượng c++ nhỉ bác. Có khóa này k ạ. Tại e muốn học bài bản và làm nhiều bài tập hơn là học ngắn gọn như thê này
a ơi a ra đủ video về C++ hướng đối tượng chưa để e theo học kênh của anh, vì em sợ ra 1 số video thôi thì dở dang em lại phải tìm kênh khác. với anh có thể cho em lời khuyên có nên học hướng cấu trúc xong mới học hướng đối tượng hay có thể học hướng đối tượng luôn vì môn em đang theo hk trên lớp là " Lập trình hướng đối tượng" ạ
E chào anh, ở đoạn 43:00 e có làm theo anh dòng code void SinhVien::nhap(){ ++dem; this->id = "SV" + string(3-to_string(dem).length(), '0') + to_string(dem); nó thông báo lỗi [Error] 'to_string' was not declared in this scope E có ghi thêm thư viện #include nhưng vẫn không được. E đang dùng C++ 5.11
:Anh oi cho em hỏi với ạ, tại sao chỗ 49:11', anh viết trong hàm main là inthongtin(x); hoặc ở 53:02, anh ghi là chuanHoa(x); vậy tại sao ở hàm nhập hoặc hàm in thì anh lại ghi là x.nhap(); và x.in(); mà khong phai là nhap(x); hoặc in (x); vậy ạ? Em cảm ơn ạ!
@@28tech_ vâng anh cho em hỏi thêm 1 câu nữa là, khi nào hàm nhập cần phải truyền tham chiếu vào void nhap (SinhVien &a) và lúc nào thì không cần tham chiếu mà để rỗng void nhap(); ạ? Vì em thấy một số clip khác anh k truyền tham chiếu mà dùng con trỏ this-> để trỏ vào các thuộc tinh, còn ở một số clip thì em thấy anh có truyền tham chiếu và anh dùng a.ten để gọi thuộc tính ra ạ? Em cảm ơn ạ.
@@28tech_ e giờ chỉ vừa bước vào năm 2 của đại học nên định hướng còn chưa được tốt và chỉ mới học kiến thức của c và c++ . E có tìm hiểu thì thấy hai ngôn ngữ này cũng khá phổ biển nên chưa biết bước tiếp theo là học nn nào cho phù hợp ạ.
Anh ơi , trong kế thừa thì lớp con ( subclass ) kế thừa toàn bộ thuộc tính và phương thứ từ lớp cha ( superclass ) thì có kế thừa luôn còn bộ khởi tạo ( constructor) , vì khi em làm thì định nghĩa bộ khởi tạo của lớp con có Super () (của lớp cha ạ) ????
Anh ơi cú pháp khai báo tham chiếu ví dụ như SinhVien& a với SinhVien & a và SinhVien &a là dấu cách khác nhau là do cú pháp quen của từng người đúng không ạ?
Anh cho em hỏi về đoạn chỗ toán tử bool, toán tử nhỏ hơn, đoạn sort, nếu mình không dùng hàm friend, mà dùng hàm thành viên của SinhVien như vậy lúc dùng hàm sort có sắp xếp được không ạ.
Theo như tôi tìm hiểu thì nếu ông chỉ đơn thuần muốn nhập giá trị cho cái class đó thôi thì nên dùng hàm nhập, còn nếu muốn class khác cx có thể truy cập vào các thuộc tính của cái class đó thì phải dùng hàm getter và setter, nhưng thay vì thế thì sao mình không public hết cả những cái thuộc tính nhỉ :)))))
chỗ đoạn 31:07 dùng hàm có kiểu trả về bool nhưng lại trả về a.gpa>b.gpa là như thế nào anh, nhiều lúc e thấy mọi người dùng hàm kiểu trả về là bool giống thế này nhưng không hiểu sao lại hàm thế
@@28tech_ cái đó có friend rồi anh, dạ friend operator của cout rồi a e chạy ở DevC++ thì nó đc nhưng qua vs2022 thì nó lại lỗi k truy xuất cái biến đó ra được dù ở trên cin vẫn ổn.
Thông tin các khóa học mình đang hướng dẫn : 28tech.com.vn/
Cám ơn bạn. Mình thợ sửa chữa. Xem video của bạn mình đã hiểu thêm 1 số thư viện của arduino
bài giảng của anh đầy đủ thật đây,học trên trường chưa chắc đã hiểu bằng học video của anh
Em có xem mấy kênh khác mà chỉ có kênh anh là dậy dễ hiểu nhất, và anh còn rất kĩ nữa ! 😄
Bài giảng của anh đầy đủ thật , xem xong hiểu ngay luôn, cảm ơn video của anh !!
😍😍😍
1:04:00 : Các bạn dùng out nhé, mình viết nhầm thành cout.
em học ngành viễn thông mà lập trình hướng đối tượng này rất có ích cho ngành của mình:v
Viễn thông sau này biết đâu làm phần mềm thì sao :v
Có ích cho mọi ngành luôn!
Thực sự xem rất dễ hiểu, biết là học lập trình khó nhưng mà xem vid anh dạy so với những bài giảng trên giảng đường đhoc thì xem a dạy dễ hiểu hơn nhiều. Chúc a có nhiều sức khoẻ và kênh sẽ phát triển hơn nữa để giúp cho nhiều người có thể phát triển kỹ năng lập trình cho bản thân hơn
Ok thank em đã ủng hộ. Nhìn chung học lập trình tự học là chính, đại học thì cũng chỉ giúp bọn em có định hướng tốt hơn thôi.
Công nhận xem hay và dễ hiểu thực sự luôn.Cảm ơn anh đã làm video OOP. Mong anh làm thêm về tính kế thừa, tính đa hình và tính trừu tượng ạ. Chúc anh một buổi chiều tốt lành ạ.
Thank you em. :D
thực sự người dạy được như anh là rất hiếm..
Cảm ơn em :D
anh dạy hay quá trên trg học chả hiểu gì vô xem anh cái làm dc luôn
sắp có kiểm tra mà may quá có vdieo của anh, cảm ơn nhiều ạ.
Nhanh còn kịp :v
em sắp thi và thật may mắn khi gặp video của anh 🥰
Sắp thi giờ mới học có sớm quá không nhỉ :v
@@28tech_ học để dành cho lần sau đó anh =)) như em bây giờ cũng vậy
Em cảm ơn anh. Video của anh rất dễ hiểu❤
Dễ hiểu quá anh ơi. Trên lớp e giảng viên dạy c, toàn bảo bọn e dùng danh sách liên kết đau não quá tr
Cũng được mà em, tốt cho mình thôi khi mình phải cài đặt theo hướng phức tạp hơn
trời ơi hay quá, em xem lại mấy lần vẫn thấy hay
Xem một lần thôi, để thời gian học cái khác :v
video hay quá anh ơi, cảm ơn anh đã làm video chất lượng thế này lại còn miễn phí cho mọi người
mong kênh anh phát triển mạnh hơn
Thank em nhé. Chúc e học tốt. Nhớ chia sẻ cho bạn bè giúp a nhé. Thì sẽ có nhiều bài giảng miễn phí chất lượng hơn cho các bạn học.
@@28tech_ em cảm ơn anh, em sẽ giới thiệu bạn bè cùng học ạ
thực sự e chưa từng gặp ai nói được như a
cảm ơn anh vì những kiến thức như thế này!
video này có thêm kế thừa là tuyệt vời luôn anh
Kế thừa a làm video sau rồi nhé
anh nói dễ hiểu thật đấy, cảm ơn anh nhiều
OK e. :D
hay anh ơi, xem video của anh dễ hiểu thật sự
😉😉 ok thank e.
Tư liệu hữu ích cho dân IT
Rất hay. Thanks for sharing!
lần đầu tiếp xúc mới lạ quá anh ạ
Haha trước lạ sau quen. Ai rồi cũng khát.
hay qua' mong anh ra nhieu video hon
Ok cảm ơn em đã ủng hộ
Chất lượng quá b ơi. Mình đang chuyển từ java c# sang học c++ mà thấy cú pháp nó khó thật, chưa kể oop 😥. Nma xem vid bạn mình hiểu dc tương đối nhiều. Tks bro❤️
OK thank b đã ủng hộ nhé.
Thật là vi diệu
ra thêm OOP đi a e học cuốn quá ạ
Cám ơn ad rất nhiều
Cảm ơn b đã ủng hộ nhé ✌🏿✌🏿✌🏿
video hay quá ạ !!!!
Thank you :D
in the details. when you get stuck, roll back to the beginning and start over. The other weay is to focus entirely on one set of commands
hay quá ạ
hay quá a ơi, a up thêm đi a
Uh đợt này bận a chưa có thời gian làm nốt
Hay quá anh ạ
Thank you e :D
em cảm ơn ạ
Anh ra nốt video về LTHDT đi ạ. xem video của a dễ hiểu quá ạ
Uh a còn phần đa hình nữa mà giờ bận quá
nhanh quá anh ạ. video này hoi nặng kt
✌🏿✌🏿✌🏿✌🏿
hóng mãi
hehe
mong a ra full video về Lập trình hướng đối tượng
Uh còn 2 phần nữa thôi b.
31:27 getter, setter
anh ơi tại sao đoạn 17:30 lại phải gán như thế ạ, nếu k gán thì có ảnh hưởng j không
hay qua oi
Cảm ơn em
e tìm trên web không có khóa học video lập trình hướng đối tượng c++ nhỉ bác. Có khóa này k ạ. Tại e muốn học bài bản và làm nhiều bài tập hơn là học ngắn gọn như thê này
@@dcmessitinh5854 bạn tham khảo ở đây nhé 28tech.com.vn/
cũng khó phết a ạ
31:27
tks a
Cảm ơn em chúc em học tốt
38:03 hết phần giới thiệu về getter, setter
Nhanh ra cái tính đa hình nha anh
ok em ơi
phần 2 đâu ạ ae
Có phần 2 không ạ
from ptit with love :Đ
Sao lộ hết thông tin thế này 😆😆😆
thanks anh
Không có gì :D
mục đích của constructer là rút ngắn code còn destructer là rút ngắn câu lệnh khỏi phải xoá nhiều à a
có thể nạp chồng toán tử nhiều dạng khác nhau được không ạ
Cú pháp 1:15:18 SoPhuc SoPhuc :: Operator ... mẫu cấu trúc là :: operator (phép toán nạp chồng) (){} hả bạn. Mình chưa hiểu đoạn SoPhuc SoPhuc lắm
cái SoPhuc đầu tiên là kiểu trả về cái thứ 2 là class
Phần 2 ở chỗ nào vậy ạ?
a ơi. lập trình hướng đối tượng nằm tóm gọn tất cả trong 4 video của a đúng ko ạ
Còn phần về đa hình nữa em ạ mà anh chưa có thời gian làm nốt.
cho em hỏi là nếu như theo góc nhìn của thầy thì class và struct nó sẽ khác nhau ở điểm nổi bật nào vậy ạ
Struct ko có các tính chất đóng gói, kế thừa, đa hình… như class
Nạp chồng này có phải là tính đa hình không ạ
52:46
anh cho em hỏi cái này có cần khai báo kiểu hàm con phải nằm ở trên hàm mẹ ko ạ hay chỉ cần trong 1 class là khai báo trên dưới ra sao cũng dc ạ
a ơi a ra đủ video về C++ hướng đối tượng chưa để e theo học kênh của anh, vì em sợ ra 1 số video thôi thì dở dang em lại phải tìm kênh khác. với anh có thể cho em lời khuyên có nên học hướng cấu trúc xong mới học hướng đối tượng hay có thể học hướng đối tượng luôn vì môn em đang theo hk trên lớp là " Lập trình hướng đối tượng" ạ
Chưa còn đa hình nữa em nhé. Em lựa chọn học cái gì trước cũng được nhưng thường thì họ học hướng cấu trúc trước rồi mới tới hdt
anh ơi nạp chồng toán tử ++ với - - thì sao a
anh đang làm ở fpt ạ
A ko e ơi. 😂😂😂
E chào anh, ở đoạn 43:00 e có làm theo anh dòng code
void SinhVien::nhap(){
++dem;
this->id = "SV" + string(3-to_string(dem).length(), '0') + to_string(dem);
nó thông báo lỗi [Error] 'to_string' was not declared in this scope
E có ghi thêm thư viện #include nhưng vẫn không được.
E đang dùng C++ 5.11
Uh to_string từ c++ 11 trở lên mới hỗ trợ nhé em. Em tìn cách chạy chuẩn C++11 trở lên là đc
tại sao dùng in chứ không dùng cin
Nếu dùng in vậy sao đoạn cout không dùng out
em chưa hiểu đoạn này lắm😥😥😥😥
SinhVien(string id, string ten, string ns, float gpa) {
this->id = id;
this->ten = ten;
this->ns = ns;
this->gpa = gpa;
}
a ơi nếu e thêm contructor này thì lúc xây dựng hàm nhập vs in chỗ cout vs cin e có thể bỏ this-> đi đc k ạ!!
Được nhé em, nói chung mình dùng this khi có sự nhập nhằng không rõ ràng giữa tham số và tên thuộc tính thôi.
:Anh oi cho em hỏi với ạ, tại sao chỗ 49:11', anh viết trong hàm main là inthongtin(x); hoặc ở 53:02, anh ghi là chuanHoa(x); vậy tại sao ở hàm nhập hoặc hàm in thì anh lại ghi là x.nhap(); và x.in(); mà khong phai là nhap(x); hoặc in (x); vậy ạ? Em cảm ơn ạ!
Hàm nhập và in là 2 hàm thuộc class. Còn hàm inthongtin và nhap ko phải hàm của class nên cách gọi nó khác nhau em ạ
@@28tech_ vâng anh cho em hỏi thêm 1 câu nữa là, khi nào hàm nhập cần phải truyền tham chiếu vào void nhap (SinhVien &a) và lúc nào thì không cần tham chiếu mà để rỗng void nhap(); ạ? Vì em thấy một số clip khác anh k truyền tham chiếu mà dùng con trỏ this-> để trỏ vào các thuộc tinh, còn ở một số clip thì em thấy anh có truyền tham chiếu và anh dùng a.ten để gọi thuộc tính ra ạ? Em cảm ơn ạ.
anh cho e hỏi chút, tại sao khi nạp chồng toán tử nhập xuất lại phải dùng &operator trong khi nạp chồng các toán tử khác chỉ cần operator thôi ạ
Anh ko rõ, cú pháp nó vậy. Chắc liên quan gì đó tới tham chiếu và thay đổi sau khi nhập xuất
em thấy Class có cấu trúc tương tự như Struct ấy ad
Uh nhưng Class thì còn nhiều cái hơn nữa nhé.
Làm sao để gõ nhanh như anh được ạ :
Em tập gõ 10 ngón trong tầm 1 tháng là sẽ gõ nhanh
28:00
Anh ơi giờ e đang phân vân giữa Js vs python, a cho e một số lời khuyên được không ạ?
Này a ko tư vấn được, vì ko biết mục đích của em học làm gì
@@28tech_ e giờ chỉ vừa bước vào năm 2 của đại học nên định hướng còn chưa được tốt và chỉ mới học kiến thức của c và c++ . E có tìm hiểu thì thấy hai ngôn ngữ này cũng khá phổ biển nên chưa biết bước tiếp theo là học nn nào cho phù hợp ạ.
a ơi cho e hỏi ngôn ngữ c thì không dùng được class với private, public hả a
C nó ko có hướng đối tượng em nhé
@@28tech_ dạ e cảm ơn nhiều ạ
a ơi. sao cái nạp chồng toán tử , e k cần return in; thì code vẫn chạy dc vậy a
Anh ơi , trong kế thừa thì lớp con ( subclass ) kế thừa toàn bộ thuộc tính và phương thứ từ lớp cha ( superclass ) thì có kế thừa luôn còn bộ khởi tạo ( constructor) , vì khi em làm thì định nghĩa bộ khởi tạo của lớp con có Super () (của lớp cha ạ) ????
Anh ơi cú pháp khai báo tham chiếu ví dụ như SinhVien& a với SinhVien & a và SinhVien &a là dấu cách khác nhau là do cú pháp quen của từng người đúng không ạ?
với cái .ignore() để không bị trôi lệnh thì dùng sau dòng nào ạ?
Cin.ignore dùng khi cần loại bỏ enter trước getline em
cho em hỏi là sau khi nạp chồng toán tử mà ta sử dụng lại toán tử đó như bình thường có khác nhau gì k a
a ko hiểu câu hỏi lắm.
Dạ anh cho em hỏi:
res.erase(res.length() - 1);
dùng làm gì vậy ạ.
Dạ em có thử bỏ nó đi thì phần tên nó chạy rất okii ạ.
Dạ em cảm ơn ạ.
này là xóa kí tự cuối đó em. vì nó bị thừa dấu cách sau tên
Đoạn 58:54 thì video bị mất 1 đoạn à a :
Sao em khởi tạo Constructor thì toán tử >> nó lại báo lỗi vậy anh?
Anh ơi cho em hỏi cách để định nghĩa (nạp chồng) toán tử = như nào ạ. Em cũng không biết kiểu dữ liệu trả về khi dùng toán tử này.
Nó trả về true false thôi. Còn logic bên trong thì em tự quyết định, ví dụ 2 nhân viên được coi là bằng nhau nếu mã sinh viên bằng nhau chẳng hạn
Anh cho em hỏi về đoạn chỗ toán tử bool, toán tử nhỏ hơn, đoạn sort, nếu mình không dùng hàm friend, mà dùng hàm thành viên của SinhVien như vậy lúc dùng hàm sort có sắp xếp được không ạ.
Được nhé. E chỉ cần nạp chồng toán tử nhỏ hơn
mình có thể set và get thuộc tính GPA thông qua 1 hàm "nhap" và "in" thế thì vì sao phải cần setter và getter nữa ạ
Theo như tôi tìm hiểu thì nếu ông chỉ đơn thuần muốn nhập giá trị cho cái class đó thôi thì nên dùng hàm nhập, còn nếu muốn class khác cx có thể truy cập vào các thuộc tính của cái class đó thì phải dùng hàm getter và setter, nhưng thay vì thế thì sao mình không public hết cả những cái thuộc tính nhỉ :)))))
@@tuananhpham9792 tính đóng gói đấy ông, để k ai tác động được mà cũng chả hiểu tác động kiểu gì
@@lwong1805Mà nó tác động để làm gì không biết rảnh quá :))))
@@tuananhpham9792 tác động để thay đổi giá trị của phương thức, như thay đổi tên, tuổi
làm gì có cái nào là public được ,đi ra đường nhìn 1 ng lạ có ai biết tên vs tuổi ngta ngay đâu ,phải hỏi chứ
@@tuananhpham9792
Em học C, giờ muốn học OOP phải chuyển qua C++ hay là C vẫn học được vậy ạ
C không có OOP em ạ, nên phải học C++ hoặc Java...
function overloading ở video nào vậy anh :)))
Phần hàm em ơi
@@28tech_ dạ anh
chỗ đoạn 31:07 dùng hàm có kiểu trả về bool nhưng lại trả về a.gpa>b.gpa là như thế nào anh, nhiều lúc e thấy mọi người dùng hàm kiểu trả về là bool giống thế này nhưng không hiểu sao lại hàm thế
thì cái a.gpa > b.gpa nó là 1 phép so sánh thôi, nó trả về true hoặc false nên e có thể return nhanh giá trị cho hàm như vậy.
Cho em hỏi vì sao khi nạp chông toán tử xuất mình cần phải trả về đối tượng được tham chiếu ạ .ostream& thay vì ostream ạ.Em cảm ơn
Cú pháp của nó thế rồi em. :D
ở ptit học lập trình hướng đối tượng bằng c++ hả bạn
Không, java bạn ạ, còn môn nay là môn C++.
anh oi sao dong code "SV" + string +(3 - to_string(dem).length,'0') + to_string(dem); error vay a? em chinh gnu c++11 r a??
mình cx đang bị
3 - tostring là sai rồi em. Đừng làm phức tạp như vậy
@@28tech_ vay lam sao anh oi??
Anh ơi em bị mắc chỗ chuẩn hóa tên với token, không ra kết quả ạ. anh có thế cho em một vài đường dẫn liên quan đến từ khóa này được không anh
Em xem lại phần string trong C++ là ok
@@28tech_ Em cảm ơn anh, em xem lại phần tách string và đã fix được ạ @@.
anh ơi cho em hỏi
vì sao ngày sinh là kiểu string mà anh lại dùng cin được ạ
Nó ko có dấu cách thì dùng cin đc nhé e
@@28tech_ cảm ơn anh ạ
anh ơi dòng cin.ignore(); để làm gì vậy ạ
Nó loại bỏ enter trong bàn phím em, trận getline bị trôi lệnh
@@28tech_ thanks anh
Cho em hỏi cái istream operator >> này ko return có sao ko ạ e ko return nó vẫn chạy đc
Ko sao cả nhưng chạy trên hệ thống là TLE đấy
Nếu khởi tạo giá trị ban đầu dùng char * mà ko dùng string thì gán như nào vậy mn?
char* tên biến =" ";
A cho e hỏi vì sao ở đoạn Operator cin, cout e để public biến thì nó chạy nhưng mà để private thì nó lại k chạy đc :))
private thì ra ngoài class sao dùng được hehe
@@28tech_ cái đó có friend rồi anh, dạ friend operator của cout rồi a e chạy ở DevC++ thì nó đc nhưng qua vs2022 thì nó lại lỗi k truy xuất cái biến đó ra được dù ở trên cin vẫn ổn.
Cho mình hỏi tại sao mình bool operator > không được a
Sao lại ko được nhỉ, b thấy mình code được mà.
Anh cho em hỏi 0:10 em nghe mãi không rõ thư viện gì ạ.
Thư viện stl thư viện của c++ e ơi
while ( ss>>token ) nghĩa là sao v a
Em học phần string trước