cuốn sách gpt4 ai đã làm

c++ - Lỗi: không thể chuyển đổi 'p1' từ 'Người (*)()' thành 'Người'

In lại Tác giả: Taklimakan Thời gian cập nhật: 2023-11-03 08:18:44 26 4
mua khóa gpt4 Nike

tôi hiểu rồi

lỗi: không thể chuyển đổi 'p1' từ 'Người (*)()' thành 'Người'

Bất cứ khi nào tôi sử dụng hàm tạo mặc định (khi tôi tạo Person p1) tôi biết đó là vì tôi đang sử dụng mảng char nhưng tôi phải sử dụng nó, tôi không thể sử dụng chuỗi

Tôi cũng nhận được 2 cảnh báo

cảnh báo: chuyển đổi sang loại 'char' không phải con trỏ từ NULL [-Wconversion-null]|

trong hàm tạo mặc định

cảnh báo: chuyển đổi không được dùng từ hằng chuỗi thành 'char*' [-Wwrite-strings]| 

Khi tôi tạo Người p2

đây là mã của tôi

#include 
#include
#include
#include
using namespace std;

lớp người {
private:
tên char*;
giới tính char;
int tuổi;
public:
Người();
Người(char*, char, int);
bạn bè void printInfo(Person);
};

Người::Người()
:name(NULL), giới tính(NULL), age(0) // điều này dẫn đến cảnh báo đầu tiên
{
}
Người::Người(char* n, char g, int a)
:tên(n), giới tính(g), tuổi(a)
{
}
void printInfo(Người p){
cout << "Tên: " << p.name << endl;
cout << "Tuổi: " << p.age << endl;
cout << "Giới tính: " << p.gender << endl;
}

int main()
{
Người p1(); // điều này dẫn đến lỗi
printInfo(p1);

Person p2("Max", 'm', 18); // điều này dẫn đến cảnh báo thứ hai
printInfo(p2);

return 0;
}

câu trả lời hay nhất

bạn đã gặp phân tích khó chịu nhất .

Người p1(); khai báo một tập tin có tên p1 hàm trả về một Person và không chấp nhận bất kỳ tham số nào. Nếu bạn muốn xây dựng một hàm tạo mặc định có tên p1 của Person đối tượng, chỉ cần nói Người p1;

Về c++ - Lỗi: không thể chuyển đổi 'p1' từ 'Person (*)()' thành 'Person', chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/25287556/

26 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress