ฉันมีเรียน
template<size_t N, size_t M>
class Matrix {
// ....
};
ฉันต้องการสร้าง a typedef
ซึ่งสร้างVector
(เวกเตอร์คอลัมน์) ซึ่งเทียบเท่ากับ a Matrix
ขนาด N และ 1 สิ่งที่ต้องการ:
typedef Matrix<N,1> Vector<N>;
ซึ่งก่อให้เกิดข้อผิดพลาดในการรวบรวม ต่อไปนี้สร้างสิ่งที่คล้ายกัน แต่ไม่ใช่สิ่งที่ฉันต้องการ:
template <size_t N>
class Vector: public Matrix<N,1>
{ };
มีวิธีแก้ปัญหาหรือวิธีแก้ปัญหา / แนวทางปฏิบัติที่ไม่แพงเกินไปหรือไม่?