| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1898 人关注过本帖
标题:把数组引用传参,sort不可以使用,请问哪里出错了呀
只看楼主 加入收藏
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:5 
把数组引用传参,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
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:20 
void num(const array<int,5>&myarray)
常量是不允许修改的,而 sort(myarray.begin(), myarray.end()) 却要求修改它。
2020-03-30 16:07
叶纤
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
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:0 
回复 4楼 叶纤
array myarray{1,2,33,5,77};
这个可以自动推导出 myarray 是 array<int,5> 类型


void num( array& myarray)
肯定不行呀,它怎么知道一定只有 array<int,5> 会传给它。
除非你把它写成模板形式
2020-03-30 16:48
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
收藏
得分:0 
了解了解,我以为array是个聚合类型的数据,直接引用就可以偷偷的看见array变量的每一个成员呢

把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-03-30 17:14
快速回复:把数组引用传参,sort不可以使用,请问哪里出错了呀
数据加载中...
 
   



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

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