c++问题:什么时候需要用额外的模版变量,friend为什么可以放在定义的前面?

图片1!
![图片2图片说明
图片3!

图片1和2代码完全正确,可以运行。图片3代码错误,编译不通过

我有两个疑问:
1. 为什么图片1中需要一个额外的模版变量U,而图片2不需要这样操作。什么时候需要用额外的模版变量呢?

2.friend函数的一般用法是:在类外定义某个函数,然后在类中用friend对该函数进行声明。为什么图片1中friend函数定义的部分写在类里面了,但是图片2中却不能这样操作?(图片3中就是错误的)

c++
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐