标题:把数组引用传参,sort不可以使用,请问哪里出错了呀
取消只看楼主
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
结帖率:100%
已结贴  问题点数:20 回复次数:3 
把数组引用传参,sort不可以使用,请问哪里出错了呀
程序代码:
#include <iostream>
#include<array>
#include<algorithm>
using namespace std;
void num(const array<int,5>&myarray)
{
    cout<<size(myarray);
   sort(myarray.begin(), myarray.end());//这里出错
    for(int i:myarray)
     {
        cout<<i;}
}
int main()
{
    array<int,5>myarray;
    myarray={1,2,33,5,77};
   num(myarray);
}

搜索更多相关主题的帖子: sort array 数组 出错 int 
2020-03-30 16:04
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
得分:0 
谢谢啦,按照您的意思去掉了就可以了

把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-03-30 16:13
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
得分:0 
程序代码:
#include <iostream>
#include<array>
#include<algorithm>
using namespace std;
void num( array &myarray)
{
    cout<<size(myarray);
   sort(myarray.begin(), myarray.end());
    for(int i:myarray)
     {
        cout<<i;}
}
int main()
{
    array  myarray{1,2,33,5,77};

   num(myarray);
}
可是变成++17的格式就传参就不可以了

把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-03-30 16:16
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
得分:0 
了解了解,我以为array是个聚合类型的数据,直接引用就可以偷偷的看见array变量的每一个成员呢

把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-03-30 17:14



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-500729-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.213404 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved