作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
用户定义类型的加法运算符是由operator +定义的,但是+ =不能解决该问题,为什么?
typedef std::array<std::uint64_t,4> myvec_t;
inline myvec_t operator+(myvec_t foo, myvec_t bar){return mod_add(foo,bar);}
myvec_t a,b;
a+=b; // g++ says: error: no viable overloaded '+='
最佳答案
您声明/定义operator+
的重载,并传递和return
副本:
inline myvec_t operator+(myvec_t foo, myvec_t bar){return mod_add(foo,bar);}
operator+=
并传递和
return
引用(假设
mod_add
返回其结果):
inline myvec_t& operator+=(myvec_t& foo, const myvec_t& bar)
{
foo = mod_add(foo, bar);
return foo;
}
关于c++ - 没有可行的重载+ =,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58765796/
对于我的一个项目,我终于需要使用我的第一个多态类(std::cout 除外)。 我正在研究如何确保至少在某些情况下我有 100% 的去虚拟化调用。 这段代码是否合法可行? dynamic_cast 有
最近有一个编译问题,用这个片段说明: struct Base { }; template struct A : Base { A(){} A(Base&&) {} }; A foo()
注意:这是一个冗长的问题,需要对 MVVM“设计模式”、JSON 和 jQuery 有很好的理解.... 所以我有一个理论/主张 DHTML 中的 MVVM 是可能的 和可行的 并且想知道您是否同意/
我有一台 Mac 服务器,我正在构建 PHP 代码以允许用户上传图像、文档甚至视频文件。研究这个肯定让我很紧张,我希望上传的内容没有病毒。 自己构建一些东西会是一个巨大的挑战吗?您会这样做,还是会
根据文档,ASP.NET 项目(尚)不支持新的 PackageReference https://learn.microsoft.com/en-us/nuget/consume-packages/pa
我是一名优秀的程序员,十分优秀!