简单的例子:
template <class P> class MyT
{
struct Item
{
public:
Item() {}
P *pData;
Item *next;
};
Item *head;
public:
...adding etc..
P* operator [](int index)
{
See question below:
}
};
我能否以某种方式确保以某种方式分配“项目”,以便我可以按如下方式计算偏移量:(@Steve :) 也许这里不太清楚;我需要的是一种快速简便的方法来获得该项目,而无需遍历 10000 个下一个。
Item *pi = head + (sizeof(Item) * (index - 1));
(更清楚?)解释我的意思