??xml version="1.0" encoding="utf-8" standalone="yes"?>国产精品青草久久久久婷婷,99久久人妻无码精品系列蜜桃,99久久无码一区人妻http://m.shnenglu.com/woaidongmao/category/7999.htmlzh-cnFri, 22 Aug 2008 09:45:26 GMTFri, 22 Aug 2008 09:45:26 GMT60使用Visio 2000逆向工程代码{换ؓUML图表http://m.shnenglu.com/woaidongmao/archive/2008/08/22/59657.html肥仔肥仔Fri, 22 Aug 2008 08:33:00 GMThttp://m.shnenglu.com/woaidongmao/archive/2008/08/22/59657.htmlhttp://m.shnenglu.com/woaidongmao/comments/59657.htmlhttp://m.shnenglu.com/woaidongmao/archive/2008/08/22/59657.html#Feedback0http://m.shnenglu.com/woaidongmao/comments/commentRss/59657.htmlhttp://m.shnenglu.com/woaidongmao/services/trackbacks/59657.html摘要Q?a >Microsoft Visio 2000 Professional Edition ?Enterprise Edition 包含通过逆向工程?Microsoft Visual C++、Microsoft Visual Basic ?Microsoft Visual J++ 代码转换为统一建模语言 (UML) cd表模型的技术。本文将讨论从每U语a实施逆向工程的步骤?

  目录

  ?

  概述

  步骤 1Q自定义开发环?

  步骤 2Q打开代码目以实施逆向工程

  步骤 3Q选择“逆向工程?Reverse Engineer) 按钮

  步骤 4Q在 Visio UML 模型图表解决Ҏ中创建您?UML 图表

  ?

Microsoft Visio 2000 Enterprise Edition ?Professional Edition 都包含通过逆向工程代码{换ؓ UML 静态结构图表的解决Ҏ。该解决Ҏ支持三种语言QMicrosoft Visual C++ 6.0、Microsoft Visual Basic 6.0 ?Microsoft Visual J++ 6.0。Visio UML 模型图表解决Ҏ所采用?UML 标准?1.2 版?

  每种语言使用的逆向工程技术各不相同。对?J++ ?Visual BasicQ该解决Ҏ使用开发环境的对象模型来收集静态结构信息。对?C++Q该解决Ҏ浏览信息文?(.BSC) 用作l构信息的来源。虽?Visual Basic ?J++ 逆向工程都用开发环境的对象模型Q但 J++ 对象模型提供了更完整的信息,因此可得到更完整的逆向工程 UML 模型。C++ 中的览信息文g包含最的信息;因此Q它所生成?UML 模型不如 J++ ?Visual Basic 逆向工程得到?UML 模型那么完整?

  本文介l通过逆向工程转换?Visio UML 模型图表解决Ҏ所需的步骤?

  注意QVisio UML 模型图表解决Ҏ只支?Microsoft Visual C++ 6.0、Microsoft Visual J++ 6.0 ?Microsoft Visual Basic 6.0 的逆向工程。要使用 Visio UML 外接E序Q必d?Service Pack 3.0 for Microsoft? Visual Studio??

  概述

  要通过逆向工程您的代码{换到 Visio UML 模型图表解决ҎQ应执行以下主要步骤Q?

  自定?Visual Studio 开发环?

  ?Visual Studio 中打开目以实施逆向工程

  从“Visio UML 外接E序?Visio UML Add-In) 工具栏中选择“逆向工程?Reverse Engineer) 按钮

  ?Visio UML 模型图表解决Ҏ中创?UML cd?

  本文的其余部分提供了每个步骤的详l指|q包括特定于~程语言的信息。例如,在自定义开发环境部分,Visual C++、Visual Basic ?Visual J++ 都有其相应的章节?

  步骤 1Q自定义开发环?

  Z实施逆向工程Q第一步应通过d“Visio UML 外接E序?Visio UML Add-In) 工具栏来自定义开发环境。以下指导显CZ如何该工具栏添加到 Visual C++、Visual Basic ?Visual J++ 的不同环境中?

  自定?Microsoft Visual C++ 6.0

  ?Visual C++ 中,选择 Tools 菜单上的 Customize?

clip_image001

  ?Customize 对话框中Q选择 Add-ins and Macro Files 选项卡?

  ?Add-ins and Macro Files 列表中,选择外接E序和宏文g列表中的 Visio UML Add-in。确保旁边的复选框被选中Q然后单?Close?

clip_image002

  出现动?Visio UML Add-in 工具栏,其中包含五个按钮?

clip_image003

  提示Q如果希望该工具栏在每次打开 Microsoft Visual Studio 旉可用Q可通过拖动该工具栏靠接到工具栏区?

  自定?Microsoft Visual Basic 6.0

  ?Visual Basic 中,从“外接程序”菜单中选择“外接程序管理器”?

clip_image004

  在“外接程序管理器”对话框中,选择“可用的外接E序”列表中的“Visio UML Add-in”。对于“加载行为”,选择“加?卸蝲”和“在启动中加载”,然后单击“确定”?

clip_image005

  出现带有四个按钮的“Visio UML 外接E序”工h?

clip_image006

  提示QVisio UML 外接E序在创建工hӞq会向“工具”菜单中d命o。您可以通过从“Visio UML 解决Ҏ”中选择“工具”来扑ֈq些命o?

  自定?Microsoft Visual J++ 6.0

  ?Visual J++ 中,选择 Tools 菜单上的 Add-In Manager?

clip_image007

  ?Add-In Manager 对话框中Q选择 Available Add-Ins 列表中的 Visio UML Solution。对?Load BehaviorQ选中 Loaded/Unloaded ?Load On StartupQ然后单?OK?

clip_image008

  出现带有四个按钮?Visio UML Add-in 工具栏?

clip_image009

  提示QVisio UML Add-in 在创建工hӞq会?Tools 菜单中添加命令。您可以通过?Tools 菜单选择 Visio UML Solution 来找到这些命令?

  步骤 2Q打开代码目以实施逆向工程

  逆向工程q程从所有这三种语言的开发环境中开始。当通过d“Visio UML 外接E序?Visio UML Add-in) 自定义环境后Q下一步是打开要实施逆向工程的项目?

Visual C++ 6.0 的附加步?

  对于 Visual C++Q在开始逆向工程之前Q还必须执行几个附加步骤。第一步是生成目的浏览信息文?(.BSC)。以下提供了生成览文g的指对{第二步是确定逆向工程中要包含的代码库。设|这些选项的指导将在浏览文件指g后提供。最后,应在实施逆向工程之前构徏目?

  生成 Visual C++ 6.0 的浏览信息文?

  ?Visual C++ 中,选择 Project 菜单上的 Settings?

clip_image010

  ?Project Settings 对话框中选择所需构徏配置的类型,单击 C/C++ 选项卡,然后选中 Generate browse info?

clip_image011

  单击 Browse Info 选项卡,指定览信息文g的名U和位置Q选中 Build browse info fileQ然后单?OK?

clip_image012

  选择 Visual C++ 6.0 逆向工程所包含的库

  单击 UML Add-in 工具栏上?Visio UML Options 按钮Q设|?Visual C++ 逆向工程所包含的库?

clip_image013

  此时昄 Visio UML Options 屏幕。如果希望在逆向工程中包?MFC Classes、ATL Classes ?Standard Include Files 的信息,只需选中所需选项旁边的复选框Q然后单?OK?

clip_image014

  步骤 3Q从“Visio UML 外接E序?Visio UML Add-In) 工具栏选择“逆向工程?Reverse Engineer) 按钮

clip_image015

  逆向工程的下一步是从“UML 外接E序?Visio UML Add-In) 工具栏选择“逆向工程?Reverse Engineer) 按钮?

  对于 Visual Basic ?Visual J++Q此操作在 Visio 2000 中打开 UML 模型图表解决ҎQ其中会昄通过逆向工程转换为模型的信息。此?UML 模型图表解决Ҏ打开Qƈ在“UML D器”中昄一个空白的静态结构图表和一个树视图Q其中包含从目中收集的模型信息?

  对于 Visual C++Q在 Visio 2000 打开q显C通过逆向工程转换?UML 模型图表解决Ҏ的项目信息之前,可能会显C另外两个屏q。如?Visual C++ 工作Z存在多个目Q可?Select Project 对话框中选择要实施逆向工程的项目,然后单击 OK?

  如果目层次l构中显CZ多个览文gQ可在“选择览文g?Select Browse File) 对话框中选择一个浏览文Ӟ然后单击“确定?OK)?

  步骤 4Q在 Visio UML 模型图表解决Ҏ中创建您?UML 图表

  现在QVisio 2000 应该昄您的目信息。要创徏 UML cd表,请将模型元素从“UML D器?UML Navigator) 拖放到“静态结构?Static Structure) 图表上。类关系(泛化、实现、绑?会自动昄。利?Visio UML 模型图表解决ҎQ您可以生成其他 UML 工gQ以指定、构造Y仉目ƈ使Y仉目Ş象化和文档化?

clip_image016



肥仔 2008-08-22 16:33 发表评论
]]>
用Visio画UML?cȝ构图Q进阶篇Q?/title><link>http://m.shnenglu.com/woaidongmao/archive/2008/08/22/59656.html</link><dc:creator>肥仔</dc:creator><author>肥仔</author><pubDate>Fri, 22 Aug 2008 08:26:00 GMT</pubDate><guid>http://m.shnenglu.com/woaidongmao/archive/2008/08/22/59656.html</guid><wfw:comment>http://m.shnenglu.com/woaidongmao/comments/59656.html</wfw:comment><comments>http://m.shnenglu.com/woaidongmao/archive/2008/08/22/59656.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/woaidongmao/comments/commentRss/59656.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/woaidongmao/services/trackbacks/59656.html</trackback:ping><description><![CDATA[<p>上一文章中说明了类l构囄基本L。要真正要完成实用的cdQ还要有许多工作要做?<p><b>cM间的关系</b><b></b> <p><b>l承关系</b><b></b> <p>l承关系是最Ҏ理解的关pR画成图的话像下面q样。面向对象的说法是is-a关系。也是说Class2 is a Class1。在C++中我们说Class2是Class1的派生类Q或者说Class1是Class2的基cR?a href="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E70C/clip_image002_2.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="286" alt="clip_image002" src="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E70C/clip_image002_thumb.jpg" width="182" border="0"></a> <p><b>聚集和组?/b><b></b> <p>从容易理解的关系说v.l常有一个类是另一格类的数据成员的情况。在UML中表CؓQ聚集(aggregation)和组成(compositionQ?<p><a href="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E70C/clip_image004_2.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="117" alt="clip_image004" src="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E70C/clip_image004_thumb.jpg" width="388" border="0"></a><a href="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E70C/clip_image005_2.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="184" alt="clip_image005" src="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E70C/clip_image005_thumb.jpg" width="604" border="0"></a> <p>从图上来看,q两U关p都表现Z端是菱Ş的直Uѝ其中有菱Ş的一端是整体Q另外一端是部分。区别就是菱形是I心q是实心的。从C++曑ֺ来看的话Q如果图L实心菱Ş的话QClass1p负责Class2的创建和销毁。更准确的说Q就是如果Class1不存在了QClass2也一定不存在。例如象下面的程序?<p>class Class2 <p>{ <p>}; <p>class Class1 <p>{ <p>    Class2 m_objClass2; <p>} <p>当然也有下面的情?<p>class Class2 <p>{ <p>}; <p>class Class1 <p>{ <p>    Class1Q)Q?<p>    ~Class1Q)Q?<p>    Class2* m_pClass2Obj; <p>}; <p>光看cȝ声明׃行了。这是就需要看cȝ实现部分了?<p>Class1Q:Class1Q) <p>{ <p>    m_pClass2Obj = new Class1;  <p>} <p>Class1::~Class1Q) <p>{ <p>    delete m_pClass2Obj; <p>    m_pClass2 = NULLQ?<p>} <p>l成QCompositionQ关p,如果在Class1的对象销毁的时候,比如在析构函C没有数据成员销毁的代码Q那么这U关pd是聚集(aggregationQ关pR当Ӟ销毁数据成员的代码Q会有很多种?<p><b>依赖关系</b><b></b> <p>依赖关系是在以个类中用了另一个类。例如下面的代码 <p>Class1Q:DoSomethingQ) <p>{ <p>    Class3 obj; <p>    obj.DoClass3Work(); <p>} <p>是q样的情c画成图的话像下面q样?<p><a href="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E70C/clip_image006_2.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="135" alt="clip_image006" src="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E70C/clip_image006_thumb.jpg" width="380" border="0"></a></p><img src ="http://m.shnenglu.com/woaidongmao/aggbug/59656.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/woaidongmao/" target="_blank">肥仔</a> 2008-08-22 16:26 <a href="http://m.shnenglu.com/woaidongmao/archive/2008/08/22/59656.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>用Visio画UML?基本操作http://m.shnenglu.com/woaidongmao/archive/2008/08/22/59655.html肥仔肥仔Fri, 22 Aug 2008 08:23:00 GMThttp://m.shnenglu.com/woaidongmao/archive/2008/08/22/59655.htmlhttp://m.shnenglu.com/woaidongmao/comments/59655.htmlhttp://m.shnenglu.com/woaidongmao/archive/2008/08/22/59655.html#Feedback0http://m.shnenglu.com/woaidongmao/comments/commentRss/59655.htmlhttp://m.shnenglu.com/woaidongmao/services/trackbacks/59655.html目的

画UML图有好多U工?VISIO只是其中一U?VISIO的动作非常轻?很多人都在用.但是对众多的C++E序员来?存在着一个问?那就是VISIO中的用语都来自面向对?和C++E序员常用的说法有所不同.q一点o很多C++E序q很困惑.希望本文能ؓ您解册个问? 在我们将使用下面?a >例子QUMLSample.zipQ?/a>来进行说明?

启动Visio

然后选择[File]-[New]-[Software]-[UML Model Diagram]可以进入到UML作图状态了.q时画面臛_应该包含3个部?形状H口,模型资源理?和作囑֌?可以通过选择[View]-[Shapes Window]来表C和隐藏形状H口.模型资源理器比较麻?必须通过[UML]-[View]-[Model Explorer]来进?

clip_image001

创徏各种N

在模型资源管理器中选择[Static Mdel]-[Top Package],炚w标右?从弹单中选择[New]-[Static Structure Diagram]卛_创徏用于制作cȝ构图的图面了,如果从弹单中选择[New]-[Sequence Diagram]卛_创徏用于制作时序囄的图?

讑֮对象的属?/h3>

讑֮对象的详l信息的大部分操作是通过属性对话框实现?可以通过在对象上双击鼠标或单击鼠标右键ƈ选择属性属性来表示属性对话框.

几种技?/h3>

改变q线的方?/h4>

在绘囄q程中连U是最常见的操?象下N?U有直角q接U和直线q接U和曲线q接U三U?

clip_image002

可以通过,用鼠标右键点d望改变种cȝq接U?在弹单中选择适当的连接线U类.

扩大和羃?/h4>

我想说的不是当然我们可以通过菜单实现扩大和羃?而是通过按住Ctrl?在上?下滚鼠标的滚轮来实现扩大和羃?

上下/左右滚动屏幕

除了用鼠标拖动滚动条的方法以?用鼠标滚轮也可以上下滚动屏幕.那么左右滚动?你可能已l猜C,先按下Shift键就可以?

拯已经存在的对?/h4>

首先按下Ctrl?用鼠标脱动对?最后释放Ctrl键就可以?需要注意的Ctrl键释攄时机一定要在鼠标释放之?

Lq线/垂直U?/h4>

按下Shift?在拖动鼠标画U?可以很单的d水^U和垂直U?其实q可以画45度的斜线.



肥仔 2008-08-22 16:23 发表评论
]]>用Visio画UML?cȝ构图Q基本篇Q?/title><link>http://m.shnenglu.com/woaidongmao/archive/2008/08/22/59654.html</link><dc:creator>肥仔</dc:creator><author>肥仔</author><pubDate>Fri, 22 Aug 2008 08:20:00 GMT</pubDate><guid>http://m.shnenglu.com/woaidongmao/archive/2008/08/22/59654.html</guid><wfw:comment>http://m.shnenglu.com/woaidongmao/comments/59654.html</wfw:comment><comments>http://m.shnenglu.com/woaidongmao/archive/2008/08/22/59654.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/woaidongmao/comments/commentRss/59654.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/woaidongmao/services/trackbacks/59654.html</trackback:ping><description><![CDATA[<p></p> <p>因ؓcd很直?所以恐怕C++成员首先接触到的应该是cd?在这文章中我们要将下面一个在MFCE序中随处可以见到类用UML图表现出? <p>class CGraphicObject <p>{ <p>    CRect m_rectBound; <p>public: <p>    BOOL SetRect(CRect rect); <p>    CRect GetRect(); <p>}; <h3>创徏cd</h3> <p>在模型资源管理器中选择[Static Model]-[Top Package],炚w标右?从弹单中选择[New]-[Static Structure Diagram]卛_创徏用于制作cȝ构图的图面了. <h3>准备工作</h3> <p>首先我们遇到的问题是,CRect和BOOL两种cd在Visio数据cd中找不到.所以我们先从追加数据类型开?Z便于理我们会先创徏MFC数据cd? <h4>创徏数据?/h4> <p>右键点击下图中模型资源管理器的根节点.在弹单中,选择[包]目. <p><a href="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image001_2.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="310" alt="clip_image001" src="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image001_thumb.jpg" width="193" border="0"></a> <p>下图是弹出的包属性对话框.点击[New]按钮,在[UML Package]列中输入[MFC Data Types],点击[OK]按钮l束.上图可以看到q加的MFC数据cd? <p><a href="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image002_2.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="369" alt="clip_image002" src="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image002_thumb.jpg" width="604" border="0"></a> <h4>q加BOOL数据cd</h4> <p>在[MFC Data Types]目上点d?选择[New]-[Data Type],在弹出的[UML Datatype Property]H口中的cdH口中选择[DataType]目,在名U项目中填写[BOOL],选择[OK]l束.用同LҎq加CRectcd. <p>注意:在MFC中CRect是一个类,但是׃我们q不兛_CRect的细?所以把CRect作ؓ单数据类型来处理. <p><a href="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image003_2.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="400" alt="clip_image003" src="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image003_thumb.jpg" width="604" border="0"></a> <h4>q加一个类</h4> <p>q加一个类很简?然后从Ş状窗口中的[UML Static Sturcture]分类中拖动[Class]对象可以了. <p><a href="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image004_2.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="372" alt="clip_image004" src="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image004_thumb.jpg" width="580" border="0"></a> <h3>讑֮cȝ详细信息</h3> <p>讑֮cȝ详细信息的大部分工作都是同时属性对话框实现?对于C++E序员来?需要设定的内容包括cd,数据成员,成员函数. <p>以开头提到的cMؓ例?<h4>cd</h4> <p>首先在[Categories]H口中选择[Class]目,然后在右面的名称栏目中写入类名就可以?在这一中我们可以暂时不必在意其他的内? <p><a href="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image005_2.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="332" alt="clip_image005" src="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image005_thumb.jpg" width="604" border="0"></a> <p>如果只是讑֮cd的话,大可不必用属性对话框.只要在选中cd象后,再在最上面一栏中单击左键,然后在输入就可以? <h4>d数据成员</h4> <p>在[Categories]H口中选择[Attributes]目,在右面的画面中增加属性。[Attribute]栏目中写入变量名Q[Type]是用来选择数据cd的。这里我们选择[MFC DataTypes::CRect]。[Visibility]栏目选择的是q个成员是公q(public)Q保护的(protected)q是U有?private)。这里我们选择[protected].[Multiplicity]一般翻译成多重性,是指Q在cMQ数据成员的个数。[1]代表在这个类中,有而且只有一个数据成员。[0..1]表示Q没有或者有一个。可以在[Init.Value]中输入数据成员的初倹{?<p><a href="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image007_2.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="214" alt="clip_image007" src="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image007_thumb.jpg" width="388" border="0"></a> <h4>增加成员函数</h4> <p>在[Category]H口中选择[Operations]目Q在右面的表gq加成员函数。在Q)isiblilityQ中选择函数是,共有Q保护还是私有的。EQͽlymorphic]表示函数是否为多态,也就是否是虚函数。EQIope]表示一个函数是属于实例Qinstance)q是属于c(classifierQ,静态函敎ͼ也被UCؓcȝ成员函数Q普通的成员函数也被UCؓ实例的成员函数。所以如q,在这里选中了EclassifierQ,p明这个函数是静态函数?<p><a href="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image009_2.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="214" alt="clip_image009" src="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image009_thumb.jpg" width="388" border="0"></a> <p>上面的操作,只是讑֮函数的一些基本信息,更详l的信息可以通过选中函数后,点击Qd性]按钮Q在出现的EQ݋Q Qperation QͽopertiesQ窗口中讑֮。首先是讑֮函数的基本信息。和上面的窗口重复的内容Q我们不再说明。我们只说明QProfix]和EQIffixQ。如果我们想要返回的cd是指针类型或者是应用cd的话Q只要在Qsuffix]中填写EQ]或E&Q就可以了?<p><a href="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image011_2.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="226" alt="clip_image011" src="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image011_thumb.jpg" width="388" border="0"></a> <p>接下来是讑֮函数的参数。这个函数只有一个参敎ͽect,但是QParameterQ窗口中却出CQ两个参数。不q通过观察QOind]列的内容可以知道Q第一个参敎EQItRect]是函数的q回倹{第二个Qrect]才是我们惌的。这个参数的QOind]是EinQ表明这个参数是用来向函C递信息的。如果是用来取得信息的,选择QoutQ,如果是双方向传递信息的Q就选择QinoutQ?<p><a href="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image012_2.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="351" alt="clip_image012" src="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image012_thumb.jpg" width="604" border="0"></a> <p>完成上面的工作以后,点击QOQ]按钮两次Q回C囄面。来看看我们的成果吧?<p><a href="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image013_2.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="209" alt="clip_image013" src="http://m.shnenglu.com/images/cppblog_com/woaidongmao/WindowsLiveWriter/VisioUML_E5AA/clip_image013_thumb.jpg" width="432" border="0"></a> <p>实际?a >例子工程</a>中的CGraphicObject的UML囑֏以参?a >Sample1Vsd.zip</a>. </p><img src ="http://m.shnenglu.com/woaidongmao/aggbug/59654.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/woaidongmao/" target="_blank">肥仔</a> 2008-08-22 16:20 <a href="http://m.shnenglu.com/woaidongmao/archive/2008/08/22/59654.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>лǵվܻԴȤ</p> <a href="http://m.shnenglu.com/" title="精品视频久久久久">精品视频久久久久</a> <div class="friend-links"> </div> </div> </footer> <a href="http://www.63550.com.cn" target="_blank">þþþþþۺձ</a>| <a href="http://www.jtoushou.cn" target="_blank">þþþþ޾ƷӰԺ</a>| <a href="http://www.jmjrt.cn" target="_blank">þþþۺþ</a>| <a href="http://www.jrbjh.cn" target="_blank">þõӰ</a>| <a href="http://www.up2me.cn" target="_blank">ڵСþþþþþ</a>| <a href="http://www.shouyoujie.cn" target="_blank">ۺϾþۺ</a>| <a href="http://www.czqxj.cn" target="_blank">þþþ޾Ʒһ </a>| <a href="http://www.haosim.cn" target="_blank">þþþ</a>| <a href="http://www.t24196.cn" target="_blank">޹Ʒþþѿ</a>| <a href="http://www.psia.cn" target="_blank">Ʒҹþ</a>| <a href="http://www.0717zf.cn" target="_blank">ݺݾƷþþĻ</a>| <a href="http://www.dgtspcb.com.cn" target="_blank">ѾƷ99þùۺϾƷ</a>| <a href="http://www.zqbd.com.cn" target="_blank">þۺϾþڹ</a>| <a href="http://www.ddvxo.cn" target="_blank">999þþѹƷ</a>| <a href="http://www.kq58.cn" target="_blank">ղƷþþþþþ</a>| <a href="http://www.omaw.cn" target="_blank">þۺϸۺϾþ</a>| <a href="http://www.cycn168.cn" target="_blank">þҹɫƷ</a>| <a href="http://www.szlove.net.cn" target="_blank">˾ƷۺϾþþ</a>| <a href="http://www.geekon.com.cn" target="_blank">޾ҹþþþþ</a>| <a href="http://www.mlbj.net.cn" target="_blank">þþþþþþþþþĻ </a>| <a href="http://www.liushishipin.cn" target="_blank">þþƷһ</a>| <a href="http://www.yunkouzi.cn" target="_blank">ٸþĻ</a>| <a href="http://www.126yi.cn" target="_blank">Ժձһձþ </a>| <a href="http://www.sr77.cn" target="_blank">þAVۺϺɫ</a>| <a href="http://www.zhangyiping.cn" target="_blank">ƷѾþþþùһ </a>| <a href="http://www.pzpt369.cn" target="_blank">ҹƵþþþһ</a>| <a href="http://www.021cp.cn" target="_blank">99þùۺϾƷӰԺ </a>| <a href="http://www.fc-lawyer.cn" target="_blank">þþþþþ97</a>| <a href="http://www.sh-tx.cn" target="_blank">AVþþþò</a>| <a href="http://www.gdczjt.cn" target="_blank">þۺϺݺۺϾþ97ɫ</a>| <a href="http://www.9n7.com.cn" target="_blank">Ʒ׾þAAAƬ69 </a>| <a href="http://www.vzrg.cn" target="_blank">AŮAVۺϾþþ</a>| <a href="http://www.duxj.cn" target="_blank">Ӱһþҹײ </a>| <a href="http://www.0532ks.cn" target="_blank">91þþƷ˾þ</a>| <a href="http://www.ulcc.com.cn" target="_blank">պƷþþþþ</a>| <a href="http://www.xyjsj88.com.cn" target="_blank">AëƬþþƷ</a>| <a href="http://www.zqdiary.cn" target="_blank">þþþþþþòҰ߳</a>| <a href="http://www.dnf-video.cn" target="_blank">þˬˬAV </a>| <a href="http://www.alichengde.cn" target="_blank">ƷۺϾþþþþ97 </a>| <a href="http://www.323r.cn" target="_blank">ƷþþþþþþӰԺ</a>| <a href="http://www.heilai.cn" target="_blank">þԭav</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>