社区
C++ 语言
帖子详情
普通流插入函数<<重载?
ebeyondboy
2009-03-12 10:23:02
没有类,定义了一个数组a[size],如果自己写一个operator<<,能cout<<a吗?
...全文
85
9
打赏
收藏
普通流插入函数<<重载?
没有类,定义了一个数组a[size],如果自己写一个operator<<,能cout<<a吗?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
amossavez
2009-03-12
打赏
举报
回复
[Quote=引用 8 楼 fengxuxing 的回复:]
数组大小本身不确定,所以在传递到 < <重载中的时候会出现无法确定边界的问题,而如果要传递大小,那么你又无法对 < <重载,所以这两者是矛盾的,只能构造有一点限制的 < <重载来实现输出数组
[/Quote]
学习了!!
Qlaiaqu
2009-03-12
打赏
举报
回复
数组大小本身不确定,所以在传递到<<重载中的时候会出现无法确定边界的问题,而如果要传递大小,那么你又无法对<<重载,所以这两者是矛盾的,只能构造有一点限制的<<重载来实现输出数组
speeder53
2009-03-12
打赏
举报
回复
mk
hyram
2009-03-12
打赏
举报
回复
运算符重载时至少有一个操作数需要是用户自定义类型。
ebeyondboy
2009-03-12
打赏
举报
回复
#include<iostream>
using std::cout;
using std::endl;
template<class T>
void operator<<(ostream &output,T a[])
{
for(int i=0;i<10;i++)
output<<a[i]<<' ';
}
template<class T>
void InsertionSort(T a[],int n)
{
int i,j;
T temp;
for(i=1;i<n;i++)
{
j=i;
temp=a[i];
while(j>0&&temp<a[j-1])
{
a[j]=a[j-1];
j--;
}
cout<<a;
cout<<endl;
}
}
int main()
{
const int S=10;
int a[S]={1,3,5,2,4,8,9,0,6,7};
InsertionSort(a,S);
return 0;
}
想这样子,怎么写流插入函数?
谢谢
猫已经找不回了
2009-03-12
打赏
举报
回复
你得重载一下。
mengde007
2009-03-12
打赏
举报
回复
cout本身就是一个重载啊!
hemiya
2009-03-12
打赏
举报
回复
按你的要求,回答是不能.
除非数组的size,是固定不变的并且a的类型是你自定义的,不是系统内置或者stl库里面定义好的.
流
插入
运算符<<
不能
重载
成类的成员
函数
,因为第一个参数必须是ostream&,因此该运算符只能
重载
为全局
函数
,一般情况下都
重载
为类的友元
函数
。:友元类的所有成员
函数
都可以是另一个类的友元
函数
,都可以访问另一个类中的非共有成员...
重载
流
插入
运算符
重载
流
插入
运算符>> 在做C++作业时碰到了个盲点,看课本也没找到,就看了看博客,顺便方法记录下来。 要求是: 在有理数类Rational中
重载
流
插入
运算符<<,以便按a/q形式输出,请将<<运算符
函数
...
C++:
重载
输出运算符<<为什么必须写成非成员
函数
?
1. 运算符作为成员
函数
时,其左侧运算对象必须是运算符所属类的一个对象 首先明白一个基本概念,对于成员
函数
,其左侧运算对象必须是运算符所属类的一个对象。也就是说左侧的这个对象必须和运算符必须同属一个类,...
C++的
流
插入
运算符“<<”和
流
提取运算符“>>”的
重载
C++的
流
插入
运算符“<<”和
流
提取...在类库提供的头文件中已经对“<<”和“>>”进行了
重载
,使之作为
流
插入
运算符和
流
提取运算符,能用来输出和输入C++标准类型的数据。因此,凡是用“cout<<”和“cin>>”对标准类型
C++运算符
重载
C++一个很有意思的特性就是除了支持
函数
重载
外还支持运算符
重载
,原因就是在C++看来运算符也是一个
函数
。比如一个 a + b 的加法表达式也可以用
函数
的形式:operator + (a, b)来表达。这里的operator +代表的就是加法...
C++ 语言
65,187
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章