В JavaScript ES6 имеется языковая функция, известная как destructuring. Он существует и на многих других языках.Как я могу эмулировать деструктурирование в C++?
В JavaScript ES6, это выглядит следующим образом:
var animal = {
species: 'dog',
weight: 23,
sound: 'woof'
}
//Destructuring
var {species, sound} = animal
//The dog says woof!
console.log('The ' + species + ' says ' + sound + '!')
Что я могу сделать в C++, чтобы получить подобный синтаксис и эмулировать такую функциональность?
В C++ вы можете перегрузить операторы. Если вы определите «структуру» и перегрузите свой оператор присваивания соответственно, возможно, вы сможете достичь того, к чему вы стремитесь. Не уверен. Но вы могли бы исследовать это направление. – Elyasin
Check out std :: tie – rici
Python и Ruby также позволяют назначать кортежи, но я думаю, что этот синтаксис * Object destructuring * довольно уникален для JS ... –