假设我有一个包含数组的类。在编译时我知道数组的大小。如何使用不同大小的数组创建此类的实例?
class MyClass {
private:
const unsigned size;
int data[size];
/* More stuff here... */
}
MyClass c1(4); /* Array size of 4 */
MyClass c2(16); /* Array size of 16 */
我无法使用new / delete,因为动态内存已用完。我也不能使用模板,因为我主要针对嵌入式系统。没有模板,这种事情是否可能?
答案 0 :(得分:1)
您可以尝试使用模板,如下例所示:
template <int size>
class MyClass {
private:
int data[size];
/* More stuff here... */
};
MyClass<4> c1 ; /* Array size of 4 */
MyClass<16> c2; /* Array size of 16 */