所以我遇到了这个问题。 我想从一个不同的类中得到一些变量然后是主要的,并且我已经知道它是好的 隐藏您的数据,以便它不会如此轻松地更改并使用getXXX函数来访问它。 我尝试使用私有:和公开:这件事,但是当我这样做时,我得到一个错误说
错误:预期的不合格ID为'私人'
我的课程名为nr1#,名为对话框,带有变量的课程称为种族(不是黑白分明)
无论如何我调用这样的函数:(类对话框)
above this is all the #include stuff
dialog::dialog(int y)
{
race raceO;
switch(y)
{
case 1: cout << "choose a class \n1 ELF = " << raceO.getStats(1.1) << endl;
break:
}
这是比赛等级
//我应该放 私人:和公众:
include "race.h"
include <iostream>
include <string>
using namespace std;
race::race(){
}
int race::raceElf(){
return 0;
}
int attack = 5;
int defence = 3;
int stamina = 6;
int race::getStats(int x){
if(x == 11){
return attack;
}
return 0;
}
答案 0 :(得分:0)
class myClass{
public:
myClass();
private:
double x,y,z;
}
这就是你应该如何使用public和private,否则我看不出有什么问题,请提供头文件或类声明。
答案 1 :(得分:0)
这取决于你想要如何使用你的课程。我会将所有数据成员保密。方法raceElf()
和getStats()
应该是公开的,因为您将在对象上调用它们。如果方法仅在其他类方法中使用但在外部不使用,则它应该是私有的。如果要创建类的任何对象,则构造函数必须是公共的。
class race{
public:
race();
int raceElf();
int getStats(int);
private:
int attack;
int defence;
int stamina;
}
race::race(){
attack = 5;
defence = 3;
stamina = 6;
}
int race::raceElf(){ return 0; }
int race::getStats(int x){
if(x == 11){
return attack;
}
return 0;
}