01/10/2018, 12:26

C++ hỏi về class, constructor và const

class MyClass
{
public:
	MyClass() {}
	~MyClass() {}
	const std::string & getString() const
	{
		return str;
	}
private:
	std::string str = "this is a string";
};

int main()
{
	std::cout << MyClass().getString() << std::endl;

	system("pause");
	return 0;
}Preformatted text

mọi người ơi cho em hỏi chút, hàm getString ở class là hàm gì vậy ạ? và tại sao nó lại có thể gọi ở hàm main theo kiểu MyClass().getString() mà ko cần phải tạo object
(bởi vì vấn đề này em cũng ko hiểu phải gọi là gì nên đặt tiêu đề topic kì lạ)

rogp10 viết 14:37 ngày 01/10/2018

Bạn đọc có thể rút ra kết luận. https://repl.it/repls/AcrobaticPhonyDingo
Tham khảo: https://gcc.gnu.org/onlinedocs/libstdc++/manual/ext_demangling.html (trên VS dễ nhìn hơn nhiều).

Tao Không Ngu. viết 14:39 ngày 01/10/2018

Hi Mercury Phạm.
Đọc kỹ lại cú pháp C++, có khởi tạo rồi nhé.
MyClass().getString()

Bài liên quan
0