Tôi gặp sự cố khi truy cập một hàm từ một lớp với đối tượng lớp trong chính của tôi. Tôi chỉ cố gắng tạo đối tượng cho lớp và sử dụng đối tượng đó để truy cập hàm bên trong tệp .cpp của lớp đó. Tôi tiếp tục gặp lỗi và thậm chí tôi đã thực hiện chương trình đơn giản nhất để kiểm tra và tôi vẫn gặp lỗi.Lớp C++ không có thành viên tên là
chính:
#include <iostream>
#include "Attack.h"
using namespace std;
int main()
{
Attack attackObj;
attackObj.printShiz();
}
Lớp tiêu đề
#ifndef ATTACK_H
#define ATTACK_H
class Attack
{
public:
Attack();
void printShiz();
protected:
private:
};
#endif // ATTACK_H
Lớp cpp
#include <iostream>
#include "Attack.h"
using namespace std;
Attack::Attack(){
}
void Attack::printShiz(){
cout << "Test" << endl;
}
Làm thế nào để khắc phục lỗi này? Mỗi khi tôi cố gắng truy cập chức năng printShiz trong lớp Attack bằng cách sử dụng một đối tượng trong chính của tôi, tôi nhận được một lỗi và nó không nghĩ rằng chức năng này tồn tại trong lớp này.
Lỗi:
error: 'class Attack' has no member named 'printShiz'
Mã có vẻ tốt. Có lẽ nó đang cố gắng sử dụng một phiên bản cũ của tiêu đề. – chris
Đôi khi một "Xây dựng lại tất cả" sửa chữa mọi thứ. – johnchen902
Chỉ cần thử nó, nhận được cùng một lỗi:/ – Rapture686