C++ 如何将成对整数视为分离变量?
有没有办法分开成对的整数? 首先,我以某种方式声明队列:C++ 如何将成对整数视为分离变量?,c++,queue,std-pair,C++,Queue,Std Pair,有没有办法分开成对的整数? 首先,我以某种方式声明队列: typedef pair<int,int>pr; queue<pr>que; 现在,当我从队列中获取值时。我必须接受任何成对的变量,比如myp pair<int , int> myp = que.front(); pair myp=que.front(); 现在,有没有办法从myp中获取两个单独变量的值,或者直接从队列中获取单独变量的值 有没有办法从myp中获取两个独立变量的值 是的: 这些称为
typedef pair<int,int>pr;
queue<pr>que;
现在,当我从队列中获取值时。我必须接受任何成对的变量,比如myp
pair<int , int> myp = que.front();
pair myp=que.front();
现在,有没有办法从myp中获取两个单独变量的值,或者直接从队列中获取单独变量的值
有没有办法从myp中获取两个独立变量的值
是的:
这些称为结构化绑定,自C++17以来一直是该语言的一部分
在C++98中有什么方法吗
对。如果您查看std::pair
的文档,您会发现它有两个成员,第一个
,和第二个
int a = myp.first;
int b = myp.second;
使用,或者,如果C++17可用,则使用。您是否知道,只需使用
int a=myp.first,b=myp.second代码>?@HolyBlackCat这应该是我的答案feel@HolyBlackCat我不知道。它工作正常,而且在C++11中有什么方法吗?
auto [c, p] = que.front();
int a = myp.first;
int b = myp.second;