linsolver_com.cpp

来自「MATLAB高级编程,MATLAB工程数学,MATLAB实用教程,MATLAB图」· C++ 代码 · 共 62 行

CPP
62
字号
#include "linsolver_com.hpp"


CLinSolver::CLinSolver()
{
    if (!g_pModule->InitializeComponentInstance(&m_hinst))
        Error("Could not create MCR instance");
}
CLinSolver::~CLinSolver()
{
    if (m_hinst)
        g_pModule->TerminateInstance(&m_hinst);
}

HRESULT __stdcall CLinSolver::gauss(/* [in] */ long nargout,
                                    /* [in,out] */ VARIANT* s) {
    return( CallComFcn( "gauss", (int) nargout, 1, 0, s ) );
}


HRESULT __stdcall CLinSolver::jacobi(/* [in] */ long nargout,
                                     /* [in,out] */ VARIANT* s) {
    return( CallComFcn( "jacobi", (int) nargout, 1, 0, s ) );
}


HRESULT __stdcall CLinSolver::sor(/* [in] */ long nargout,
                                  /* [in,out] */ VARIANT* s,
                                  /* [in] */ VARIANT w) {
    return( CallComFcn( "sor", (int) nargout, 1, 1, s, &w ) );
}


HRESULT __stdcall CLinSolver::get_a(/* [out, retval] */ VARIANT* a) {
    return( GetProperty( "a", a ) );
}
HRESULT __stdcall CLinSolver::put_a(/* [in] */ VARIANT a) {
    return( PutProperty( "a", &a ) );
}

HRESULT __stdcall CLinSolver::get_b(/* [out, retval] */ VARIANT* b) {
    return( GetProperty( "b", b ) );
}
HRESULT __stdcall CLinSolver::put_b(/* [in] */ VARIANT b) {
    return( PutProperty( "b", &b ) );
}

HRESULT __stdcall CLinSolver::get_x0(/* [out, retval] */ VARIANT* x0) {
    return( GetProperty( "x0", x0 ) );
}
HRESULT __stdcall CLinSolver::put_x0(/* [in] */ VARIANT x0) {
    return( PutProperty( "x0", &x0 ) );
}

HRESULT __stdcall CLinSolver::get_eps(/* [out, retval] */ VARIANT* eps) {
    return( GetProperty( "eps", eps ) );
}
HRESULT __stdcall CLinSolver::put_eps(/* [in] */ VARIANT eps) {
    return( PutProperty( "eps", &eps ) );
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?