【发布时间】:2021-02-02 14:29:00
【问题描述】:
所以我开始使用 OOP C++ 进行新的编程,我有以前的编程经验。无论如何,我们从类、对象和构造函数开始。我有点理解,但仍然对这个特定的任务有问题。我需要用类和向量来制作它。所以我需要这样做,在程序结束时它会打印出平均通过考试的结果。当我编写类并在 Student 类中添加此属性时,程序显示 Informatics 错误:
名称后跟
::必须是一个类
我尝试了很多方法,但仍然无法弄清楚。你能帮我解决它吗,不仅仅是name followed by :: must be a class,而是整个程序。代码如下。 int main() 是任务中给出的原始代码
#include <iostream>
#include <string>
#include <vector>
using namespace std;
class School
{
public:
};
class Informatics {
public:
};
class Student
{
public:
string name;
string surname;
int passed;
Student(string _name, string _surname, int _passed) {
name = _name;
surname = _surname;
passed = _passed;
}
};
int main() {
School::Informatics::Student Ante("Ante", "Antic", 10); // 10 passed exams..
School::Informatics::Student Ivica("Ivica", "Ivic", 12); // 12 passed exams..
cout << School::Informatics::Student::AveragePassedExams() << endl; // 11 = (10+12)/2
return 0;
}
【问题讨论】:
-
您是否已经在讲座中介绍过命名空间?这个练习看起来希望你使用它们
-
@idclev463035818 好吧,由于 OP 使用
using namespace std;,他们可能对 namespaces 有一个粗略的理解:-P -
School::Informatics::Student你想用这个实现什么?当您将它们定义为单独的类时,为什么要连接它们?
标签: c++ class object vector constructor