This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

mxSetProperty (C and Fortran)

Set value of public property of MATLAB object

C Syntax

#include "matrix.h"
void mxSetProperty(mxArray *pa, mwIndex index,
  const char *propname, const mxArray *value);

Fortran Syntax

#include "fintrf.h"
subroutine mxSetProperty(pa, index, propname, value)
mwPointer pa, value
mwIndex index
character*(*) propname



Pointer to an mxArray which is an object.


Index of the desired element of the object array.

In C, the first element of an mxArray has an index of 0. The index of the last element is N-1, where N is the number of elements in the array. In Fortran, the first element of an mxArray has an index of 1. The index of the last element is N, where N is the number of elements in the array.


Name of the property whose value you are assigning.


Pointer to the mxArray you are assigning.


Use mxSetProperty to assign a value to the specified property. In pseudo-C terminology, mxSetProperty performs the assignment:

pa[index].propname = value;

Property propname must be an existing, public property and index must be within the bounds of the mxArray. To test the index value, use mxGetNumberOfElements or mxGetM and mxGetN functions.

mxSetProperty makes a copy of the value before assigning it as the new property value. Making a copy might be a concern if the property uses a large amount of memory. There must be sufficient memory (in the heap) to hold the copy of the value.


  • mxSetProperty is not supported for standalone applications, such as applications built with the MATLAB® engine API.

Introduced in R2008a

Was this topic helpful?