Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从另一个类读取变量 P>嗨,我对C++比较陌生,我在java方面有很多经验,而且批量很多,但是我被困在如何从另一个类中读取信息。_C++_String_Variables_Cout_Cin - Fatal编程技术网

如何从另一个类读取变量 P>嗨,我对C++比较陌生,我在java方面有很多经验,而且批量很多,但是我被困在如何从另一个类中读取信息。

如何从另一个类读取变量 P>嗨,我对C++比较陌生,我在java方面有很多经验,而且批量很多,但是我被困在如何从另一个类中读取信息。,c++,string,variables,cout,cin,C++,String,Variables,Cout,Cin,我想做的是让我的主类包含故事和用户输入,但将大多数变量存储在另一个类中,然后在需要的时间使用代码访问它们,例如:我有一部分代码,用户在其中输入它们的名称。我希望将输入作为变量存储在Variables类中,然后当游戏显示其名称(playerName)时,主类读取Variables类中的playerName,然后将其显示在main类中。那么,我需要在main类中输入什么代码来显示variable类中的变量呢 // Demonstrates Variable class #include <i

我想做的是让我的主类包含故事和用户输入,但将大多数变量存储在另一个类中,然后在需要的时间使用代码访问它们,例如:我有一部分代码,用户在其中输入它们的名称。我希望将输入作为变量存储在Variables类中,然后当游戏显示其名称(playerName)时,主类读取Variables类中的playerName,然后将其显示在main类中。那么,我需要在main类中输入什么代码来显示variable类中的变量呢
// Demonstrates Variable class

#include <iostream.h>      // for cout

class Variables // begin declaration of the class
{
   private:  // begin.  private section
   std::string name; // member variable

   public:   // begin.    public section
     Variables();     // constructor
     std::string getName(); // accessor function
     void setName(int age);  // accessor function
 };

// constructor of Variables,
Variables::Variables()
{
     name = "";
}

// getName, Public accessor function:  
// returns value of name member
std::string Variables::getName() 
 return name;
}

// Definition of setName, public
// accessor function
void Variables::setName(std::string nme)
{
  // set member variable its age to
  // value passed in by parameter age
  name = nme;
}

int main()
{
  Variables variables(); //class object
  std::string name; //local variable

  std::cin >> name; 
  variables.setName(name); //set name

  std::cout << variables.getName();

  return 0;
}
#包括//for cout 类变量//类的begin声明 { private://begin.private部分 std::string name;//成员变量 public://begin.public部分 变量();//构造函数 std::string getName();//访问器函数 void setName(int age);//访问器函数 }; //变量的构造函数, 变量::变量() { name=“”; } //getName,公共访问器函数: //返回name成员的值 std::string变量::getName() 返回名称; } //集合名的定义,公共 //存取函数 void Variables::setName(std::string nme) { //将成员变量的年龄设置为 //参数age传入的值 名称=nme; } int main() { Variables();//类对象 std::string name;//局部变量 std::cin>>名称; variables.setName(name);//set name
std::cout除了Twahanz的回答之外:如果你有一个类
管理器
,当
变量
保存数据时,它也可以工作

class Manager {
  Variables m_my_data;
  ... void some_action();
}

void Manager::some_action() {
  std::cout << m_my_data.getName() << std::endl;
}
类管理器{
变量m_我的数据;
…使某些行动无效();
}
void管理器::一些_操作(){

Std::你最好是在C++中使用一个课堂或教程,而不是一次一个地问这样的基本问题。Mark Ransom是对的,这不是一个合适的问题,尤其是没有发布任何代码。我们所能做的就是猜出什么地方出了问题。也许你没有把<代码>公共<代码>放在你的变量类中,但是我们HAV。e不知道,因为不存在与其他人的代码后期贪婪…您需要了解更多关于面向对象设计的知识。其中一个要点是“数据封装”,即一个类包含所有必要的函数和变量,以便在其内部使用。该类的变量不应与该类分离。您仍然可以使用静态类的成员,并随时访问它们为了完整性:这也适用于两个类(当然)。编辑:示例提取到另一个答案,因为注释中的格式太有限。