C++ 将记录推送到数据结构中的堆栈

C++ 将记录推送到数据结构中的堆栈,c++,data-structures,C++,Data Structures,我想知道是否可以使用 int age = 21; string name = "marc"; char gender = 'M'; std::stack stck; stck.push (age,name,gender); 到堆栈中。 我所看到的只是将一个项目推到堆栈中 创建一个包含要推送的信息的对象,然后推送该对象 struct Person { Person(int age, String name, char gender) : age(age), name(name), ge

我想知道是否可以使用

int age = 21;
string name = "marc";
char gender = 'M';
std::stack stck;
stck.push (age,name,gender); 
到堆栈中。

我所看到的只是将一个项目推到堆栈中

创建一个包含要推送的信息的对象,然后推送该对象

struct Person
{
    Person(int age, String name, char gender) : age(age), name(name), gender(gender) {}
    int age;
    String name;
    char gender;
};

Stack<Person> s;
s.push(Person(age, name, gender));
struct-Person
{
Person(int-age,String-name,char-gender):年龄(age),姓名(name),性别(gender){}
智力年龄;
字符串名;
性别;
};
堆栈s;
s、 推送(人(年龄、姓名、性别));

<>这是完全正常的C++,任何C++书籍都会详细解释。p> 要定义任意数据记录而不创建自己的
结构
,可以使用:

#包括
#包括
#包括
使用PersonRecord=std::tuple;
int main(){
std::堆栈s;
s、 push(std::make_tuple(21,“Marc”,“M”);
s、 push(std::make_tuple(25,“Maria”,“F”);
}

看到它在工作。

Google:“OOP”。创建一个人或任何东西并使用它。确保你可以将记录推送到任何地方。只需将记录创建为类或结构,然后继续。谢谢,我没有具体说明这个问题,对此我很抱歉。@owonubijobsdanday您不是很具体。正如你所看到的,这两种方法都很好。您可以为记录创建自定义结构/类,也可以使用我的通用建议。完全取决于你在问题中没有提到的进一步要求。
#include <tuple>
#include <stack>
#include <string>

using PersonRecord = std::tuple<int,std::string,char>;

int main() {
    std::stack<PersonRecord> s;

    s.push(std::make_tuple(21,"Marc",'M'));
    s.push(std::make_tuple(25,"Maria",'F'));

}