gpt4 book ai didi

c++ - 将数组作为模板类型传递

转载 作者:可可西里 更新时间:2023-11-01 18:25:48 26 4
gpt4 key购买 nike

我需要传递一个数组作为模板类型。怎么可能实现。例如,我想要这样的东西。

Fifo<array, Q_SIZE> f; // This is a queue of arrays (to avoid false sharing)

我应该用什么代替数组?假设我需要一个 int 数组。另请注意,我不想要 std::vector 或指向数组的指针。我想要整个基本数组,类似于 int array[32]

最佳答案

试试这个:

Fifo<int[32], Q_SIZE> f; 

像这样:

#include <iostream>
template <class T, int N>
struct Fifo {
T t;
};

int main () {
const int Q_SIZE = 32;
Fifo<int[32],Q_SIZE> f;
std::cout << sizeof f << "\n";
}

关于c++ - 将数组作为模板类型传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10128159/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com