Чтобы сделать это с помощью JS
Вы можете присоединить их непосредственно к контейнеру div, или вы можете нажать их в массив. Ниже показано, как добавить их в ваш div.
1) Когда вы храните свои изображения в хранилище, создайте ссылку на изображение в базе данных firebase со следующей структурой
/images/(imageName){
description: "" ,
imageSrc : (imageSource)
}
2) Когда вы загружаете документ, вытащите все URL-адреса источника изображения из базы данных, а не в хранилище, с помощью следующего кода
$(document).ready(function(){
var query = firebase.database().ref('images/').orderByKey();
query.once("value").then(function(snapshot){
snapshot.forEach(function(childSnapshot){
var imageName = childSnapshot.key;
var childData = childSnapshot.val();
var imageSource = childData.url;
$('#imageGallery').append("<div><img src='"+imageSource+"'/></div>");
})
})
});
Нет. В стандарте C ++ 03 говорится:
[Примечание: поскольку список аргументов явного шаблона следует за именем шаблона функции и потому, что шаблоны функций членов-членов преобразования и шаблоны-функции-члены-конструкторы вызываются без использования функции name, нет способа предоставить явный список аргументов шаблона для этих шаблонов функций.] (§14.5.2 / 5)
blockquote>
Существует другое решение для передачи информации типа в шаблонные конструкторы, которые не могут принимать значение этого типа в качестве аргумента:
template<class T>
struct id
{};
struct A {
template<class T>
A(id<T>);
};
A a=id<int>();
Изменить:
Обратите внимание: A a(id<int>());
не будет работать из-за самого досадного разбора. Он будет интерпретироваться как объявление функции. См. этот вопрос для дальнейшего объяснения.
нет, вы не можете создать экземпляр этого класса с помощью этого конструктора. НО:
struct A
{
template < typename T >
A(T const&);
};
Теперь вы можете.