我尝试使用boost :: simple_segregated_storage,但我不能理解如何正确使用它。没有任何样品。我以下一种方式使用它:
dirs = "north west south east".split
#=> ["north", "west", "south", "east"]
["direction"].product(dirs)
#=> [["direction", "north"], ["direction", "west"],
# ["direction", "south"], ["direction", "east"]]
但我收到了崩溃。我做错了什么错误? 如何以正确的方式使用它?
答案 0 :(得分:2)
您应该使用pStorage.add_block(block, block_sz, partition_sz);
而不是segregate()
,因为segregate()
仅用于将块分隔成块(我假设你知道块和块的概念,如果没有,{{3是一个插图)。 add_block()
隔离block
并将其空闲列表合并到pStorage
的免费列表中。在add_block()
之后,pStorage不为空,您可以从中分配内存。
答案 1 :(得分:0)
不应该是“int block[num_partitions]”,因为它是一个“int”数组