Em thắc mắc về public và private trong C++ ạ

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.

1 Like

Làm sao em return 1 lần cả 3 giá trị vậy anh ??


Làm như hình mà báo lỗi gì đó em ko hiểu nữa

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 :smile: À 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. :smile:

1 Like

:joy: giá trị trả về là int, nhưng return nguyên cái chuỗi là sao??

2 Likes

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

2 Likes

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ế :smile: ,
int a = 0, b = 0, c = 0, d = 0;:joy:

1 Like

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 :v:

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.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?