30/09/2018, 20:51
Vấn đề về class trong C++
Xin chào mọi người, cho em hỏi là ở dòng cout << ABC.getname << endl ;
và cout << ABC.getname() << endl ;
Viết như thế nào là đúng ạ ? Sao em viết cả hai đều có lỗi cả @@
#include <iostream>
using namespace std;
class lophoc
{
public:
void setname(string ced){
ced = name;
}
string getname(){
return name;
}
private:
string name;
};
void main()
{
lophoc ABC;
ABC.setname(" Xin chao thi chu") ;
cout << ABC.getname << endl ;
system("pause");
}
Bài liên quan
Việc gọi tới một phương thức (method) trong class thì
cout << ABC.getname() << endl ;
@@ Để vậy thì nó báo lỗi thế này:
IntelliSense: no operator “<<” matches these operands operand types are: std::ostream << std::string
Bạn không định kiểu trả về cho phương thức
Vẫn không được bạn ơi Bạn nói rõ hơn giúp mình được không ạ @@
Mục đích của bạn là lấy về giá trị của name và đặt giá trị cho nó phải không ?
Nếu vậy thì bạn phải tạo hai phương thức riêng biệt
1 là
getname();
2 là
setname(string name);
Mình viết như vậy không đúng hả bạn ?
Bạn thử coi sao ?
Lỗi rồi bạn ơi, vừa khai báo kiểu void + string đâu được bạn @@
Quen tay ghi lộn
Bài của bạn nhầm ở hai chỗ này
1
2
Minh sửa lại rồi @@ Sao nó vẫn báo lỗi ở dòng cout là sao ta.
Mình thấy có lỗi gì đâu ???
Đây bạn ơi @@
Bỏ cái dấu cách giữa cout và << đi.
Xài
string
không cần thư viện à ???Nó báo lỗi không hiểu kìa.
Rồi được rồi bro ơi. Cám ơn nhiều ạ
Với lại
int main()
chứ đừngvoid main()
Sao phải dùng như vậy vậy bro ?
Để sau này đi phỏng vấn không có bị rớt
^^ Cám ơn bro đã chia sẽ kinh nghiệm.