Vì biến toàn cục đc tự động set = 0
Còn biến cục bộ thì ko được tự động set = 0 mà nó khá ngẫu nhiên.
Nên cần phải nhập giá trị cho nó hoặc là khởi tạo khi khai báo.
Em thắc mắc về public và private trong C++ ạ
Giờ chắc bạn hiểu rồi nhỉ, tóm lại bạn muốn nhập ở phương thức set mà không muốn khởi tạo ở hàm main() thì truyền reference cho nó (mình nói ở trên rồi), còn không truyền reference thì phải khởi tạo giá trị cho biến truyền vào ở hàm main(), biến toàn cục thì mặc định giá trị khởi tạo bằng 0 nên không lỗi.
p/s: Mình test trên Code Block thì không cần khởi tạo giá trị của biến ở hàm main(), không truyền reference vẫn chạy được, chắc do VS khắt khe hơn Code Block À khuyên bạn nên khởi tạo giá trị của biến ngay sau khi khai báo nó.
khai báo biến ngay sau khi khởi tạo là mình set giá trị cho nó sẵn luôn hả bạn
Bạn chỉ return được 1 giá trị thôi.[quote=“Quoc_Duy_Dang, post:24, topic:32518, full:true”]
khai báo biến ngay sau khi khởi tạo là mình set giá trị cho nó sẵn luôn hả bạn
[/quote]
Chính xác, ví dụ int var = 0
, vì khi khai báo (không phải biến toàn cục) mà chưa khởi tạo giá trị thì giá trị của nó do compile chọn đại giá trị rác nào đó, điểu này rất nguy hiểm, vd thì như bài của bạn ở trên.
giá trị trả về là int, nhưng return nguyên cái chuỗi là sao??
cảm ơn bạn nha, giờ mình khá hiểu rồi.
giờ em sửa lại là string GetAgesHeightandWeight hả anh
có cách nào khai báo nhiều biến integer trên 1 dòng và set giá trị cho tất cả = 0 ko mấy anh
int a, b , c, d...;
a = b = c = d = e= f= ... = 0;
:v
Sửa lại string cũng không được đâu, mà bạn nên để hàm get từng thuộc tính, làm gì mà combo 3 cái lắm thế ,
int a = 0, b = 0, c = 0, d = 0;
okey, cảm ơn 2 anh, em làm đc rồi, em để 3 cái combo cho khỏi tốn dòng, làm biếng thui
Lập trình không làm biếng vậy được. thuộc tính kiểu int xong trả về chuỗi mà còn không đúng. ~_~
hehe, em sẽ rút kinh nghiệm, cảm ơn 2 anh nhiều lắm
em đang học lại cái hàm dựng constructor, lần này em học lần 2 vì lần trước học đến hàm dựng, khó hiểu quá nên em chán rồi bỏ, giờ phải học lại
mình học đến phần con trỏ, địa chỉ rồi mà vẫn chưa hiểu được int &giatri và int giatri nó khác nhau như thế nào. Ai khai sáng cho mình với
Bạn nên đọc lại phần Arguments passed by value and by reference trong http://www.cplusplus.com/doc/tutorial/functions/ để nắm rõ lại.