XLL+ Class Library

COper::RowToVector

Reads a row from an array into a vector of numbers or strings

[C++]
BOOL RowToVector(
   std::vector<double>& dvec,
   CString* psErrorString = 0,
   USHORT usRow = XLA_UNIQUE_VECTOR,
   long lFlags = XLA_ARRAY_FLAGS_STD,
   double dDefault = 0.0,
   USHORT usIgnoreCols = 0
) const;
BOOL RowToVector(
   std::vector<CString>& smat,
   CString* psErrorString = 0,
   USHORT usRow = XLA_UNIQUE_VECTOR,
   long lFlags = XLA_ARRAY_FLAGS_STD,
   const char* pszDefault = "",
   USHORT usIgnoreCols = 0
) const;

Parameters

dvec

A vector of double, whose contents will be replaced by the contents of the OPER array.

psErrorString

Pointer to an error string buffer. If the function fails for any reason, a useful error string will be placed here, e.g. "expected number in cell 3". Ignored if 0.

usRow

Zero-based index of row to be extracted. If it is out of range, the function will fail.

If usRow is set to XLA_UNIQUE_VECTOR, then the only row of a single-row array will be returned: if the array has more than one row, the function will fail and return FALSE.

lFlags

Flags controlling the conversion. See matrix & vector flags for a full list of flag values.

dDefault

Default value to be used when a cell matches the XLA_DEFAULT_ flags provided.

usIgnoreCols

Number of columns at the left of the range to ignore. This can be used to exclude labels from ranges.

smat

A vector of CString, whose contents will be replaced by the contents of the OPER array.

pszDefault

Default value to be used when a cell matches the XLA_DEFAULT_ flags provided.

Return value

The function returns TRUE if the conversion was successful, FALSE if it failed for any reason.

If it fails, an explanatory error string will be written to *psErrorString. This should be returned to the user, along with the name of the argument that failed. See the example for more details.

Remarks

This function extracts a single row of numbers or strings from an array argument. It is reasonably 'smart': by default it truncates any empty cells at the right of the input range.

Example

COper::ColToVector() & RowToVector() Example

Requirements

Header: xllplus.h

See Also

COper Class | COper Methods