Addressing mwArrays Above the 2 GB Limit
In R2007b, you had to define MX_COMPAT_32_OFF in
the mbuild step to address MWArrays
above the 2 GB limit on 64-bit architectures. If you did not define MX_COMPAT_32_OFF,
the compile time variable MX_COMPAT_32 was defined
for you, limiting you to using smaller arrays on all architectures.
In R2008a, the default definition of MX_COMPAT_32 was
removed, and large array support is now the default for both C and
C++ code. This default may, in some cases, cause compiler warnings
and errors. You can define MX_COMPAT_32 in your mbuild step
to return to the previously default behavior.
Code compiled with MX_COMPAT_32 is not
64-bit aware. In addition, MX_COMPAT_32 controls
the behavior of some type definitions. For instance, when MX_COMPAT_32 is
defined, mwSize and mwIndex are
defined to ints. When MX_COMPAT_32 is
not defined, mwSize and mwIndex are
defined to size_t. This can lead to compiler warnings
and errors with respect to signed and unsigned mismatches.
In R2008b, all support for MX_COMPAT_32 was removed.
See C++ Utility Library Reference,
for detailed changes to mwArray classes and method
signatures.
 | Introduction | | C Shared Library Target |  |
Learn how to build standalone executables and C/C++ shared libraries from MATLAB code.
Get free kit