代码拉取完成,页面将自动刷新
同步操作将从 GoodmanTao/DesignPatternInC 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
#include <stdio.h>
#include "ComponentWindow.h"
//属性、方法声明
struct ComponentWindow_Fld
{
apr_pool_t *m_pPool;
//继承接口
IComponent m_component;
};
static void Free(IComponent **ppComponent)
{
ComponentWindow_Free(&(ComponentWindow *)(*ppComponent)->pImplicit);
*ppComponent = NULL;
}
static void Display(IComponent *pComponent)
{
//ComponentWindow *pInst = (ComponentWindow *)pComponent->pImplicit;
puts("显示窗口.");
}
ComponentWindow * ComponentWindow_New(apr_pool_t * pSupPool)
{
apr_pool_t *pPool;
apr_pool_create(&pPool, pSupPool);
ComponentWindow *pInst = apr_palloc(pPool, sizeof(ComponentWindow));
pInst->pFld = apr_palloc(pPool, sizeof(ComponentWindow_Fld));
pInst->pFld->m_pPool = pPool;
pInst->pFld->m_component.pImplicit = pInst;
pInst->pFld->m_component.Free = Free;
pInst->pFld->m_component.Display = Display;
return pInst;
}
IComponent * ComponentWindow2IComponent(ComponentWindow * pInst)
{
return &(pInst->pFld->m_component);
}
void ComponentWindow_Free(ComponentWindow ** ppInst)
{
apr_pool_destroy((*ppInst)->pFld->m_pPool);
*ppInst = NULL;
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。