domexception.cpp

来自「IBM的解析xml的工具Xerces的源代码」· C++ 代码 · 共 81 行

CPP
81
字号
/* * Copyright 2001-2002,2004 The Apache Software Foundation. *  * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at *  *      http://www.apache.org/licenses/LICENSE-2.0 *  * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. *//* * $Id: DOMException.cpp,v 1.6 2004/09/08 13:55:39 peiyongz Exp $ */#include <xercesc/dom/DOMImplementation.hpp>#include <xercesc/util/XMLString.hpp>#include <xercesc/framework/MemoryManager.hpp>#include "DOMException.hpp"XERCES_CPP_NAMESPACE_BEGIN// ---------------------------------------------------------------------------//  Destructor and Constructor// ---------------------------------------------------------------------------DOMException::~DOMException(){    if (msg && fMsgOwned)        fMemoryManager->deallocate((void*)msg);}DOMException::DOMException():code((ExceptionCode) 0),msg(0),fMemoryManager(0),fMsgOwned(false){      }DOMException::DOMException(      short                 exCode                         , const XMLCh*                message                         ,       MemoryManager* const  memoryManager):code((ExceptionCode) exCode),msg(message),fMemoryManager(memoryManager),fMsgOwned(false){      if (!message)    {        const unsigned int msgSize = 2047;        XMLCh errText[msgSize + 1];        fMsgOwned = true;        // load the text        msg = XMLString::replicate             (               DOMImplementation::loadDOMExceptionMsg(code, errText, msgSize) ? errText : XMLUni::fgDefErrMsg            , fMemoryManager             );    }}DOMException::DOMException(const DOMException &other):code(other.code),msg(0),fMemoryManager(other.fMemoryManager),fMsgOwned(other.fMsgOwned){    msg = other.fMsgOwned? XMLString::replicate(other.msg, other.fMemoryManager) : other.msg;}XERCES_CPP_NAMESPACE_END

⌨️ 快捷键说明

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