C++ C++;我有一个类的数组,我想访问其中的元素
如果我使用的术语是错误的,我对编程一无所知 我必须创建一个控制台应用程序,用户可以添加、修改、打印和删除食物项目 我为我的食物上了课C++ C++;我有一个类的数组,我想访问其中的元素,c++,arrays,class,C++,Arrays,Class,如果我使用的术语是错误的,我对编程一无所知 我必须创建一个控制台应用程序,用户可以添加、修改、打印和删除食物项目 我为我的食物上了课 class food{ private: bool isBasic; nmfvg MeatOrOther; string name; public: food::food(){ isBasic=true; MeatOrOther = NONE; name = ""; } food::food(string _nam
class food{
private:
bool isBasic;
nmfvg MeatOrOther;
string name;
public:
food::food(){
isBasic=true;
MeatOrOther = NONE;
name = "";
}
food::food(string _name,bool _isBasic, nmfvg _MeatOrOther){
isBasic=_isBasic;
MeatOrOther=_MeatOrOther;
name = _name;
}};
我将用户正在制作的食物放入一系列类型的食物中
food foods[100];
food temp("food1",true,VEG);
foods[0]=temp;
这是我储存食物的正确方式吗?
2-如果是这样的话,我该如何开始打印食物的名称[0]?这没关系,但可能
vector
会更好。
您可以通过在name中添加访问者来打印name
class food {
//
public:
string get_name() const { return name; }
};
std::cout << foods[0].get_name() << std::endl;
更好的做法是,可以将食物对象保存在std::vector中,而不是像以下那样的数组中:
std::vector<food> foods;
foods.push_back(temp("food1",true,VEG));
然后,您可以通过以下方式打印名称:
std::cout<<foods[0].GetName();
std::coutof课程。为什么函数,即不修改的对象不应该是常量?为什么我们不应该在const对象上使用GetName()?
std::string food::GetName()
{
return name;
}
std::cout<<foods[0].GetName();