C ++ шаблонный, статически размещенный массив - PullRequest
0 голосов
/ 27 февраля 2012

Я пытаюсь сделать что-то подобное для проекта ...

template <class N> class MyClass { float properties[N]; };

Есть ли способ сделать это в C ++?

1 Ответ

5 голосов
/ 27 февраля 2012

То, что вам нужно, называется значение параметр шаблона:

template <size_t N> class MyClass { float properties[N]; };
        //^^^^^^ note this 

Теперь вы можете создать экземпляр этого шаблона класса, передав любое неотрицательное целое значение в качестве аргумента шаблона.Например,

MyClass<10> c1;  //N=10
MyClass<100> c1; //N=100

Вы можете передать выражение const также как:

const size_t size = 200;
MyClass<size>  c2; //N=200
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...