我试图制作一个基本的班级程序来练习制作班级,尽管我遵循了可视化++的说Person() expression must have a class type.
我不太了解它在说什么,在查找之后什么也没找到。这是我的代码:
//My main program
// ConsoleApplication1.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "Person.h"
using namespace std;
int main(){
Person person();
cout << person.getName() << "Age = " << person.getAge() << endl;
return 0;
}
//My person.cpp file
#include "stdafx.h"
#include "person.h"
Person::Person() {
name = "unknown";
age = 0;
}
string Person::getName() {
return "person's name is " + name;
}
int Person::getAge() {
return age;
}
//My person.h file
#pragma once
#include "Person.cpp"
#include <iostream>
#include <string>
using namespace std;
class Person {
private:
string name;
int age;
public:
Person();
string getName();
int getAge();
};
答案 0 :(得分:0)
要扩展@Igor Tandetnik在创建Person
实例时所说的内容,实际上是在声明一个名为person
并返回数据类型为Person
的函数。此函数不带参数,因此:()
。您想做的是
int main(){
Person person;
//...
//...
}
通过这种方式创建名为Person
的{{1}}的实例,或更简单地说,创建名为person
的{{1}}将是Person
而不是bob