我在某处使用了一个结构,该结构声明为:
struct Foo
{
someArray[64];
//...other stuff
};
它在许多地方被广泛使用,我想将其更改为:
template <size_t N = 64>
struct Foo
{
someArray[N];
//...other stuff
};
因为有一个地方(确切地说是四个)需要将此结构与 128 字节数组一起使用以确保正确性,但它为所有其他用途引入的惩罚不值得付出。在提供默认模板参数时,我希望它能够透明地通过,除了那些需要更广泛的内部数组的技术人员,然后声明Foo<128>
. 不幸的是,它似乎强迫它的每一次使用说Foo<>
。有没有解决的办法?