Алгоритмы boost :: mpl
, похоже, не могут работать с типами std :: tuple
из коробки, например, следующее не работает compile (boost-1.46.0, снимок g ++ 2011-02-19):
#include
#include
#include
namespace mpl=boost::mpl;
typedef mpl::vector types;
static_assert(mpl::contains::value, "vector contains bool");
typedef std::tuple types2;
// the following does not compile:
// error: no class template named ‘apply’ in ‘struct boost::mpl::contains_impl’
static_assert(mpl::contains::value, "tuple contains bool");
Самый простой способ заставить алгоритмы boost :: mpl
работать на std :: tuple
?
boost :: fusion
предоставляет эту функциональность (как и для boost :: tuple
)? ] boost :: tuple
в std :: tuple
легко? Я динамически добавляю строки (элементы) в ToolStripItemCollection с помощью:
Dim onClickHandler As System.EventHandler = New System.EventHandler(AddressOf Symbol_Click)
Dim item As New ToolStripMenuItem(newSymbol, Nothing, onClickHandler)
SomeToolStripMenuItem.DropDownItems.Add(item)
Таким образом, элементы добавляются не за один раз, а один за другим на основе внешних триггеров по всей программе сеанс. Я хотел бы сортировать раскрывающийся список каждый раз, когда добавляю новый элемент. Каковы мои варианты достижения этого?