A multidimensional map class
MapN provides a multidimensional map container.
A MapN object contains key lists and values. A value is some unit of data that you want stored in the MapN object, and a key list is a unique reference to that data.
MapN is modelled on containers.Map, but whereas a containers.Map object is indexed by a single scalar or string key, a MapN object is indexed by an ordered set of such keys, expressed as a comma-separated list of arguments.
A MapN object is constructed like this:
M = MapN();
Values are stored using M(key1, key2, ...) = value, for example:
M(1, 'a') = 'a string value';
M(1, 'b') = 287.2;
M(2) = [1 2 3; 4 5 6];
M(2, 'x', pi) = {'a' 'cell' 'array'};
and values are retrieved using M(key1, key2, ...), for example
v = M(1, 'b');
u = M(2);
This contribution also includes a memoize function, inspired by the blog entry at http://blogs.mathworks.com/loren/2006/02/08/use-nested-functions-to-memoize-costly-functions/ The memoize function demonstrates one use of MapN.
Cite As
David Young (2026). A multidimensional map class (https://in.mathworks.com/matlabcentral/fileexchange/33068-a-multidimensional-map-class), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Acknowledgements
Inspired: davestanley/MultiDimensionalDictionary
Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
