специализация шаблона и инициализация статических членов

Чтобы получить это от звукового компонента, прикрепленного к элементу, вы можете записать

var mySound = document.querySelector('#yourElement').components.sound.attrValue.src

, затем

var myAudioDuration = document.querySelector(mySound).duration

И продолжительность будет сохранена в этой переменной.


В качестве альтернативы, если ваш аудиофайл сохранен в активах с идентификатором 'myAudio', например


 

Вы можете написать

var myAudioDuration = document.querySelector('#myAudio').duration

И длительность будет сохранена в этой переменной.

Надеюсь, что это поможет

. Вы можете больше узнать об элементах управления аудио / видео тегами здесь

0
задан ampawd 19 January 2019 в 15:17
поделиться

1 ответ

Код:

template<>
std::map<int, std::vector<std::string> > Storage<int>::things = {
    { 1, {"FOO", "foo"} },
    { 2, {"BAR", "bar"} },
    { 3, {"ZAR", "zar"} }
};

- это не специализация шаблона класса Storage, а специализация статического члена данных шаблона класса .

Член класса шаблона может быть специализированным (при условии, что нет нестатических членов данных). То есть можно специализировать весь класс шаблона в целом, как в:

template<class T>
struct A{
   struct B{
      using type = T;
      };
    void g();
    };

 template<>
 struct A<void>{}; //specialize the entire class.

Или специализировать только элемент шаблона класса:

//Specialization of B for A<int>
template<>
struct A<int>::B{
   static int f();
   };

Вышеуказанная специализация члена эквивалентно специализации шаблонного класса:

template<>
struct A<int>{
   struct B{ //come from the member specialization definition
     static int f();
     };
   void g(); //come from unspecialized A definition.
   };

В результате вы можете наблюдать это, если попытаетесь скомпилировать:

A<char>::B::type x = `a`; 
A<double>::B::type y = `b`; 

A<int>::B::type err; //compilation error
int z = A<int>::B::f(); //ok.

A<void>::B o; //compilation error
auto w = A<void>::f(); //compilation error
0
ответ дан Oliv 19 January 2019 в 15:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: