| 查看: 640 | 回复: 5 | |||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | |||
lixy1217木虫 (著名写手)
|
[交流]
STL中重载运算的问题
|
||
|
以vector的加法为例,首先想到的语法是 template<typename T> vector<T>&operator+(vector<T>&a,vector<T>&b) 但是有一个问题,我们会希望不同类型(int、double、complex)之间的向量应该也是可以相加的。 而如果用两个类型名,写成如下 operator+(vector<T1>&a,vector<T2>&b) 我们又无法在定义的时候就知道该返回哪个类型的,显然int+double应该返回double,而double+complex该返回complex 而如果放弃对"+"的重载,而只重载"="和"+=",即 "c=a; c+=b;" 的方式,这样看起来不舒服倒是小事,但我如果还想重载一个矩阵与向量的乘法那该怎么办呢? 还有一种方法,就是将"小"的向量赋值给"大"的向量,达到类型统一后再进行计算,可这样的话就可能要多出很多计算量。 例如complex+complex是double+complex的两倍,而complex*complex大概是double*complex的三倍。 这方面,Matlab似乎很好的解决了此问题,但不知道用了什么样的办法。 当然还是更希望能听到各位的高见~ |
» 猜你喜欢
请问有评职称,把科研教学业绩算分排序的高校吗
已经有3人回复
孩子确诊有中度注意力缺陷
已经有12人回复
2025冷门绝学什么时候出结果
已经有3人回复
天津工业大学郑柳春团队欢迎化学化工、高分子化学或有机合成方向的博士生和硕士生加入
已经有4人回复
康复大学泰山学者周祺惠团队招收博士研究生
已经有6人回复
AI论文写作工具:是科研加速器还是学术作弊器?
已经有3人回复
2026博士申请-功能高分子,水凝胶方向
已经有6人回复
论文投稿,期刊推荐
已经有4人回复
硕士和导师闹得不愉快
已经有13人回复
请问2026国家基金面上项目会启动申2停1吗
已经有5人回复

lixy1217
木虫 (著名写手)
- 应助: 4 (幼儿园)
- 金币: 4859.6
- 散金: 117
- 红花: 7
- 帖子: 1379
- 在线: 233.7小时
- 虫号: 1125891
- 注册: 2010-10-18
- 性别: GG
- 专业: 计算数学与科学工程计算

6楼2015-09-18 09:22:14
dlmufei
木虫 (小有名气)
- 应助: 6 (幼儿园)
- 金币: 3904.5
- 散金: 10
- 帖子: 246
- 在线: 184.1小时
- 虫号: 2426711
- 注册: 2013-04-19
- 性别: GG
- 专业: 地理学

2楼2015-09-15 12:29:09
lixy1217
木虫 (著名写手)
- 应助: 4 (幼儿园)
- 金币: 4859.6
- 散金: 117
- 红花: 7
- 帖子: 1379
- 在线: 233.7小时
- 虫号: 1125891
- 注册: 2010-10-18
- 性别: GG
- 专业: 计算数学与科学工程计算

3楼2015-09-15 16:01:34
dlmufei
木虫 (小有名气)
- 应助: 6 (幼儿园)
- 金币: 3904.5
- 散金: 10
- 帖子: 246
- 在线: 184.1小时
- 虫号: 2426711
- 注册: 2013-04-19
- 性别: GG
- 专业: 地理学

4楼2015-09-15 17:10:19














回复此楼