Есть ли другой способ создания объекта bson из устаревшего драйвера, mongodb, который выглядит следующим образом:
{ name: "abc", vals: [0,1,2,3,...,n] }
с элементами vals из std :: вектор с плавающей точкой ?
В документации я намотал BSONObjBuilder().append
это единственный способ?
Вы также можете использовать BSON()
макрос:
BSONObj b = BSON("name" << "abc" << "vals" << ba);
где ba
это BSONArray
для 1, 2, …, N списка. Вы могли бы использовать BSONArrayBuilder
чтобы создать этот массив или, если вы знаете размер списка, априори вы можете использовать BSON_ARRAY()
макрос:
BSONArray ba = BSON_ARRAY( 1 << 2 << 3 << .. N );