Không chạy được code ví dụ bài 15, khoá học C++ trên youtube của anh Đạt

#include<iostream>
#include<string>
using namespace std;
class huy{
	public:
		void setname(string a)
		{
			a = b;
		}
		string getname(){
			return b;
		}
	private:
		string b;

};
void main()
{
	huy xuat;
	xuat.setname("hoc lap trinh");
	cout << xuat.getname() << endl;
	system("pause");
}
  • Format lại code bạn ơi. Thêm 3 dấu ` vào đầu và cuối code.

Code C++ không nên dùng void main().

ở đây bạn muốn làm gì vậy?

mình chỉ muỗn xuất ra dòng “học lập trình” … nhưng khi xuất thì nó không ra gì cả …mình mới bắt đầu học ,mong được bạn chia sẻ

  • Bạn chưa định nghĩa b là gì.
  • Thiếu void init huy::huy().

mình không[quote=“sueruan012, post:5, topic:50667, full:true”]
Bạn chưa định nghĩa b là gì.
Thiếu void init huy::huy()
[/quote]

mình đã định nghĩa b trong phần private …và mình không hiểu ý bạn đang nói.

À, sorry. Nhưng mình không hiểu bạn định dùng b để làm gì.

Nếu bạn là người mới học, hãy học cơ bản từ đầu về class trong C++.

Mình nhắc bạn format code đó, chứ không phải là bạn trả lời mình không hay có.
Mà bạn cũng hơi kì ha, mình giúp bạn đặt category mà bạn lại bỏ đi :expressionless:

để viết đươcj dòng đó thì bạn đảo ngược 2 biến cho nhau.
còn mình khuyên bạn nên học lại từ đầu, học tốt functional program đã

2 Likes

mình mới học nên còn khó hiểu về class ,mơ hồ về nó nhiều ,mình chỉ đang làm theo vd trong video của anh đạt ,là in ra dòng “”

mình có học qua C trên trường , mình nghĩ học tiếp c++ sẽ tốt hơn cho mình .

void setname(string a)
{
    b = a;
}

Chứ làm như bạn thì có tác dụng gì, thay đổi biến a của hàm để làm gì, học video cũng phải hiểu chứ đừng copy không.

Mà bạn đừng bao giờ để cho mình cái thói quen đặt tên phương thức và tên thuộc tính như vậy, người ngoài đọc khó hiểu.

1 Like

mình không hiểu nên thử đánh lại vd xem thử cơ chế , cũng không nghĩ tên biến là nhất thiết nên sử dụng a,b cho quen thuộc.

Ý mình là bạn nên nắm vững phần lập trình hàm, biến, khai báo, gán giá trị, quan trọng là hiểu mình đang viết cái gì và nó chạy như thế nào… chắc rồi thì hẵng đi lên class.

2 Likes
class huy{
	public:
		void setname(string a)
		{
			a = b;    // **sai ở dòng này**  đổi lại thành      b = a;
		}
		string getname(){
			return b;
		}
	private:
		string b;

};

ông thành viên clbgamesvn.com phải ko nhỉ. thấy tên quen quen :slight_smile:

Không biết nữa, tại đa nhân cách :joy:

cám ơn bạn , mình hiểu chỗ sai r .<3

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