Зачем использовать стандартные типы в качестве параметров шаблона? - PullRequest
0 голосов
/ 17 мая 2018

В настоящее время я изучаю C ++, и я прочитал главу о шаблонах в книге, которую читаю.

И они только что показали пример использования целого числа в качестве параметра шаблона, это выглядит так:

template<class T, int N> class array{...}

в примере N используется для определения размера массива, но мой вопрос: зачем вам это вообще делать, если вы также можете просто передать размер в качестве параметра конструктора, например?

1 Ответ

0 голосов
/ 17 мая 2018

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

Если вы собираетесь размещать массив статически, его размер должен быть известен во время компиляции. Поэтому шаблонный параметр для определения размера подходит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...