/ РЕДАКТИРОВАНИЕ: Я вижу, собственный итератор на самом деле необходим здесь (я неправильно читал вопрос сначала). Однако, я позволяю коду ниже стенда, потому что это может быть полезно при подобных обстоятельствах.
<час>собственный итератор, на самом деле необходимый здесь? Возможно, достаточно передать все необходимые определения контейнеру, содержащему реальные точки:
// Your class `Piece`
class Piece {
private:
Shape m_shape;
public:
typedef std::vector<Point>::iterator iterator;
typedef std::vector<Point>::const_iterator const_iterator;
iterator begin() { return m_shape.container.begin(); }
const_iterator begin() const { return m_shape.container.begin(); }
iterator end() { return m_shape.container.end(); }
const_iterator end() const { return m_shape.const_container.end(); }
}
Это предполагает, что Вы используете vector
внутренне, но тип может легко быть адаптирован.
Вы его установили?
В debian / ubuntu:
aptitude install python-numpy
В Windows:
http://sourceforge.net/projects/numpy/files/NumPy/
В других системах:
http://sourceforge.net/projects/numpy/files/NumPy/
$ tar xfz numpy-n.m.tar.gz
$ cd numpy-n.m
$ python setup.py install
Ваш sys.path необычный, поскольку каждая запись имеет префикс / usr / intel. Я предполагаю, что numpy установлен в обычном месте без префикса, например it. / usr / share / pyshared / numpy в моей системе Ubuntu.
Попробуйте find / -iname '* numpy *'