next up previous contents
Next: Функции-члены классов для MPI Up: С++ Previous: Структура   Contents

Классы С++ для MPI

Все классы, константы и функции MPI объявлены в рамках поля имен MPI (MPI namespace). Поэтому, вместо префикса MPI_, используемого в Си и ФОРТРАНe, функции MPI имеют префикс MPI::.

Совет разработчикам: Так как директива namespace официально является частью чернового стандарта ANSI С++, на момент написания она еще недостаточно широко реализована в компиляторах С++. Реализации компиляторов без namespace могут получить такую же область видимости используя класс MPI, для которого нельзя создать экземпляр объекта. (Чтобы придать классу MPI такое свойство, все конструкторы должны быть объявлены как private).[]

Члены поля имен MPI это те классы, которые соответствуют объектам, явно используемым в MPI. Укороченное определение поля имен MPI для MPI-1 и его классов см. ниже: namespace MPI { class Comm {...}; class Intracomm : public Comm {...}; class Graphcomm : public Intracomm {...}; class Cartcomm : public Intracomm {...}; class Intercomm : public Comm {...}; class Datatype {...}; class Errhandler {...}; class Exception {...}; class Group {...}; class Op {...}; class Request {...}; class Prequest : public Request {...}; class Status {...}; }; Кроме того, для MPI-2 определены следующие классы: namespace MPI { class File {...}; class Grequest : public Request {...}; class Info {...}; class Win {...}; }; Заметьте, здесь мало порожденных классов и виртуальное наследование тут не используется.



Alex Otwagin 2002-12-10