需要帮助修复奇怪的模板错误
Need help fixing strange template error
当我试图编译我的项目时,我收到一个C2440错误,说'initializing' : cannot convert from 'vector<component_count>' to 'vector_2D'.
。C2440上的MSDN文档说The compiler cannot cast from 'type1' to 'type2'.
我有一个基类vector:
template <unsigned int component_count>
class vector {...}
和一个派生类vector_2D:
class vector_2D : public vector<2>
我的基类定义了一个默认的和复制的构造函数,以及运算符重载。给我错误的代码是:
vector_2D character_position = pen_position + vector_2D(offset_x, offset_y);
pen_position早期创建为
vector_2D pen_position(string_position);
我似乎无法纠正我的错误。有人能指出出了什么问题和/或如何解决吗?
vector operator + (const vector& a_vector) const
就是问题所在。您正在返回一个基,然后尝试将其分配给派生的。
最简单的解决方案是提供过载
vector_2D operator + (const vector_2D& a_vector) const
相关文章:
- 需要帮助在 c++ 中将字符串转换为字符 ----错误 "const char *" 类型的值不能用于初始化 "char" 类型的实体
- C++:需要帮助了解运算符重载错误
- C++ DLL 运行时错误"abc.dll is not a valid WIN32 application" 。请帮助解决这个问题
- 我需要帮助创建一个评分系统,但它一直给我一个错误,注释掉的整数是给我带来麻烦的部分
- 需要一些帮助来查找我的程序中的逻辑错误
- 我用C++做了一个计算器,但我对"type of calculator"的要求循环了两次。有人可以帮助指出我的错误吗?
- 霍纳斯定律需要代数帮助,显示错误的答案 c++
- 错误:E0018 需要支架 - 需要帮助
- 任何人都可以在带有JNI的Android Studio上帮助我解决此错误,是否缺少一些内容?
- 需要帮助修复分段错误(核心转储)
- 需要帮助识别简单多线程代码中的错误
- 函数和指针帮助:程序生成,但崩溃,没有任何特定错误
- 需要帮助以了解错误消息
- 功能错误中的表达语法帮助!C/C
- For-Loop帮助获得错误的输出
- 合并排序算法编译错误 [帮助]
- 命令行中的应用错误帮助 cl.exe版本 12.00.8186
- 带有 NDK 平台的 C++ 错误帮助 '_IOR' 未在此范围内声明
- 需要 C++ 语法错误帮助,'}'之前缺少';'
- 二进制码错误帮助