精华内容
下载资源
问答
  • 继承与派生

    2020-02-22 18:11:17
    什么是继承 面向对象中一个概念。...同时在子类中可以增加属于自己属性和方法来完成自身功能需求和覆盖父类中原有属性和方法,得到与父类不同功能。 基本语法:class 子类名:父类名表 ...

    什么是继承

    面向对象中的一个概念。比如汽车是属于交通工具这个类别中的一种,那么就把汽车称为是交通工具的子类别,而交通工具称为汽车的父类别,这样他们之间就属于继承关系。这种继承关系使得子类具有父类的各种属性和方法,而不需要再编写或改变相同的功能。同时在子类中可以增加属于自己的属性和方法来完成自身功能需求和覆盖父类中原有的属性和方法,得到与父类不同的功能。

    基本语法:class 子类名:父类名表 { 数据成员和成员函数声明 };

    父类名表构成:访问控制   父类名,访问控制   父类名,......,访问控制   父类名

    访问控制:表示子类对于父类的继承方式,影响子类对父类的访问控制

    public                  公有继承

    private                 私有继承

    protected             保护继承

    要点注意

    1、子类拥有父类的特征(属性和方法(除了构造和析构)),而父类不会包含子类的特征,父类更通用(子类中共有的),子类更具体(自身需要的)

    2、子类受限于父类的访问控制,父类中public、protected修饰的可以被继承,private修饰的不能被继承

    3、子类根据需要可以增加父类中没有的属性和方法

    4、子类也可以被继承(一种特殊的父类)

    5、子类对象可以当作父类对象使用

    子类对外访问属性表

     

                                             父类成员访问级别

     

     

    public

    proteced

    private 

    public

    public

    proteced

    private

    proteced

    proteced

    proteced

    private

    private

    private

    private

    private

    public继承:父类成员在子类中保持原有访问级别

    private继承:父类成员在子类中变为private成员

    protected继承:父类中public成员会变成protected

                              父类中protected成员仍然为protected

                              父类中private成员仍然为private

    如何为成员声明访问级别

    1、需要被外界访问的成员直接设置为public

    2、只能在当前类中访问的成员设置为private

    3、只能在当前类和子类中访问的成员设置为protected,protected成员的访问权限介于public和private之间。

    #include <iostream>
    using namespace std;
    #pragma warning(disable : 4996)
    
    class A
    {
    private:
        int a;//内部访问
    protected:
        int b;
    public:
        int c;
        A()
        {
            a = 0; b = 0; c = 0;
        }
        void set(int a, int b, int c)
        {
            this->a = a; this->b = b; this->c = c;
        }
    };
    
    class B : public A
    {
    public:
        void print()
        {
            //cout<<"a = "<<a; //err
            cout << "b = " << b ;
            cout << "  c = " << c << endl;
        }
    };
    
    class C : protected A
    {
    public:
        void print()
        {
            //cout<<"a = "<<a; //err
            cout << "b = " << b ;
            cout << "  c = " << c << endl;
        }
    };
    
    class D : private A
    {
    public:
        void print()
        {
            //cout<<"a = "<<a; //err
            cout << "b = " << b ;
            cout << "  c = " << c << endl;
        }
    };
    
    int main()
    {
        A aa;
        //aa.a = 1;//当前类中访问
        //aa.b = 2;//当前类中访问或子类访问
        aa.c = 3;
        aa.set(4, 5, 6);
    
        B bb;//public继承
        //bb.a = 1;//父类中访问
        //bb.b = 2;//当前类中或父类中访问
        bb.c = 3;
        bb.set(4, 5, 6);
        bb.print();
    
        C cc;//protected继承
        //cc.a = 1;//父类中访问
        //cc.b = 2;//当前类中或父类中访问
        //cc.c = 3;//当前类中或父类中访问
        //cc.set(4, 5, 6);//当前类中或父类中访问
        cc.print();
    
        D dd;//private继承(不可访问)
        //dd.a = 1;//父类中访问
        //dd.b = 2;//当前类中或父类中访问
        //dd.c = 3;//当前类中或父类中访问
        //dd.set(4, 5, 6);//当前类中或父类中访问
        dd.print();
    
        system("pause");
        return 0;
    }

    “三看”原则

    C++中的继承方式(public、private、protected)会影响子类的对外访问属性,判断某一句话,能否被访问

    1、看调用语句,这句话写在子类的内部、外部

    2、看子类如何从父类继承(public、private、protected)

    3、看父类中的访问级别(public、private、protected)

     

    展开全文
  • 软件需求管理计划

    2016-12-01 17:54:24
    一个粒度层次的需求可以从属于较粗粒度的上一层需求,也可以派生较细粒度的下一层需求。较高层次的需求称之为概要需求,较低层次的需求称之为详细需求。 4.6 需求状态:指需求的属性在项目开发周期中各个阶段的取值...
  • 独立需求 段阶

    2015-05-29 08:33:59
    因此,独立需求是一种不能从上一级需求派生出本级需求的需求类型,即不会发生其他项目的需求对这一个项目的需求产生影响的需求形式,如对产成品、备品备件的需求就属于这种类型。这类需求主要受市场等外部随机因素的...

    当一个库存项目的需求不依赖于其他库存项目的需求时,称为独立需求。因此,独立需求是一种不能从上一级需求派生出本级需求的需求类型,即不会发生其他项目的需求对这一个项目的需求产生影响的需求形式,如对产成品、备品备件的需求就属于这种类型。这类需求主要受市场等外部随机因素的影响,需求必须经过预测,即根据对历史资料的分析或由管理人员的经验得到。当一个库存项目的需求与其他库存项目的需求直接相关时,称为非独立需求相关需求相关需求是一种能够从上一级需求项目派生出这一级需求项目的需求类型,如半成品、原材料相关需求是从独立需求中推导出来的。物料需求计划根据独立需求,自动地计算出构成这些项目的部件、零件,以及原材料相关需求量。

     

    当一个库存项目的需求不依赖于其他库存项目的需求时,称为独立需求。因此,独立需求是一种不能从上一级需求派生出本级需求的需求类型,即不会发生其他项目的需求对这一个项目的需求产生影响的需求形式,如对产成品、备品备件的需求就属于这种类型。这类需求主要受市场等外部随机因素的影响,需求必须经过预测,即根据对历史资料的分析或由管理人员的经验得到。当一个库存项目的需求与其他库存项目的需求直接相关时,称为非独立需求相关需求相关需求是一种能够从上一级需求项目派生出这一级需求项目的需求类型,如半成品、原材料相关需求是从独立需求中推导出来的。物料需求计划根据独立需求,自动地计算出构成这些项目的部件、零件,以及原材料相关需求量。

    展开全文
  • LINGO软件学习

    2009-08-08 22:36:50
    当采用方式①时,必须显式罗列出所有要包含在派生集中成员,并且罗列每个成员必须属于稠密集。使用前面例子,显式罗列派生成员: allowed(product,machine,week)/A M 1,A N 2,B N 1/; 如果需要生成一个大...
  • 多态理解1

    2010-01-28 17:15:15
    x是不同,但是属于一个派生系 invoke形式是相同,但实现不同 具体定位到哪个实现是由x本质决定 这对jvm来说x是什么是非常清楚 动态加载、动态绑定 代码都在那了   附段非常精彩摘自...

    我理解多态定义上就是要通过统一、抽象的形式去完成复杂多变的需求
    x.invoke();

    x是不同的,但是属于一个派生系
    invoke形式是相同的,但实现不同
    具体定位到哪个实现是由x的本质决定的
    这对jvm来说x是什么是非常清楚的 动态加载、动态绑定
    代码都在那了

     

    附段非常精彩的摘自csdn的形象比喻:

     

    老大要收高利贷,对三个小弟说,给我去跟某某某收高利贷(这就是一个借口,定义收高利贷方法)
    三个小弟A,B,C听到了之后采取不同的行动,
    A:打电话过去威胁说不换就XXX(这就是具体的实现)恐吓
    B: 直接带家伙杀到他家楼下等(这也是实现)威逼
    C:直接面谈,说换1W返回1百,下次再借,利率打折(这也是实现)利诱
    相同的动作对不同的类有不同的实现方法,这就是多态。

     

    http://topic.csdn.net/u/20100127/13/d222364c-6329-4afc-bdea-b501ab8d0baa.html?seed=1637513254&r=63080559#r_63080559

    展开全文
  • 债券知识 国债期货是指通过有组织交易场所预先确定买卖价格并于未来特定时间内进行钱券交割国债派生交易方式。国债期货属于金融期货一种,是一种高级金融衍生工具。它是在20世纪70年代美国金融市场不稳定...
  • 但是对于一些特殊动画需求,如何处理?一种方法是在C++层派生Action子类,继承原有机制,使用方法与一般Action无异。但很多时候修改或增加C++层代码并不方便,能否直接在lua层定制属于自己Action?答案是...

    1. lua层简化版动画系统

    cocos2dx中的Action系统能实现一般性的动画控制。但是对于一些特殊的动画需求,如何处理?一种方法是在C++层派生新的Action子类,继承原有机制,使用方法与一般Action无异。但很多时候修改或增加C++层代码并不方便,能否直接在lua层定制属于自己的Action?答案是肯定的,但是lua层的实现不能简单继承c++层的Action,因为它无法修改Action的核心函数:时间线step()以及进度线update()。这意味着我们首先需搭建一个简易版动画系统,该动画系统框架与cocos2dx中的动画系统框架基本保持一致。
    框架将包含三部分:1)动画管理器:用于统一绑定目标与执行动画;2)动画基类;3)动画具体派生类,如移动动画与缓动动画。

    -- 动画管理器
    ccActionManager = class("ccActionManager")
    --[[
    ccActionManager.targetActionsMap = {
        target1 = {action1,action2},
        target2 = {action1,action2,action3},        
    }]]
    function ccActionManager:ctor()
        self.targetActionsMap = {} -- 目标节点与其动画映射表
    end
    function ccActionManager:runAction( action,target ) -- 绑定并执行动画
        assert(action~=nil and target~=nil,"action and target must be non-nil")
    
        action:startWithTarget(target)
        if not self.targetActionsMap[target] then
            self.targetActionsMap[target] = {}
        end
        table.insert(self.targetActionsMap[target],action)
    
        -- 目标移除场景时 清空对应动作
        target:onNodeEvent("exit",function ()
            self.targetActionsMap[target] = nil 
        end)
    
        -- 启动主循环
        local scheduler = cc.Director:getInstance():getScheduler()
        if not self.mainScheduleId then
            self.mainScheduleId = scheduler:scheduleScriptFunc(function (dt)
                self:update(dt)
            end, 0, false)
        end
    end
    
    function ccActionManager:update( dt ) 
        local hasAction = false
        for target,actionLst in pairs(self.targetActionsMap) do
            for key,action in ipairs(actionLst) do
                action:step(dt)
                hasAction = true
                if action:isDone() then
                    actionLst[key] = nil -- 清除已完成动画
                end
            end
        end
    
        if not hasAction then
            if self.mainScheduleId then
                local scheduler = cc.Director:getInstance():getScheduler()
                scheduler:unscheduleScriptEntry(self.mainScheduleId)
                self.mainScheduleId = nil
            end
        end
    end
    g_ccActionManager = ccActionManager:create()
    
    
    local Action = class("Action") -- 动作基类
    --[[
    Action.m_target = nil -- 动画的目标节点
    ]]
    function Action:ctor()
    end
    function Action:startWithTarget( target )
        self.m_target = target
    end
    function Action:getTarget()
        return self.m_target
    end
    function Action:initWithDuration( duration )
        self.m_elapsed = 0 -- 已执行时间
        self.m_duration = duration -- 总时间
    end
    function Action:getDuration()
        return self.m_duration
    end
    function Action:step( dt ) -- 将动作执行时间线转换为进度线
        self.m_elapsed = self.m_elapsed + dt
        local percent = math.max(0,math.min(self.m_elapsed/self.m_duration,1))
        self:update(percent)
    end
    function Action:isDone()
        return self.m_elapsed > self.m_duration
    end
    function Action:update( percent )
    end
    
    
    -- 实现一个在周期区间内循环移动的动作
    ccMoveToPeriod = class("ccMoveToPeriod",Action)
    function ccMoveToPeriod:ctor( duration,endPos,periodWidth,periodHeight )
        -- endPos: period*n + pos 
        self:initWithDuration(duration)
        self.m_endPos = endPos
        self.m_periodWidth = periodWidth
        self.m_periodHeight = periodHeight
    end
    function ccMoveToPeriod:startWithTarget( target )
        self.super.startWithTarget(self,target)
        self.m_startPos = cc.p(target:getPositionX(),target:getPositionY())
        self.m_deltaLen = cc.pSub(self.m_endPos,self.m_startPos)
    end
    function ccMoveToPeriod:update( percent )
        -- 位置转换至一个周期区间内
        local curPosX = self.m_periodWidth and (self.m_startPos.x + self.m_deltaLen.x * percent) % self.m_periodWidth or self.m_startPos.x
        local curPosY = self.m_periodHeight and (self.m_startPos.y + self.m_deltaLen.y * percent) % self.m_periodHeight or self.m_startPos.y
        self.m_target:setPosition(cc.p(curPosX,curPosY))
        -- print("ccMoveToPeriod:update  curPosX:",curPosX,"curPosY:",curPosY,"startPosY:",self.m_startPos.y)
    end
    
    
    -- 缓动动画 与cocos基本一致
    ccEaseInOut = class("ccEaseInOut",Action)
    function ccEaseInOut:ctor( action,rate )
        self.m_action = action
        self.m_rate = rate
        self:initWithDuration(action:getDuration()) 
    end
    function ccEaseInOut:startWithTarget( target )
        self.super.startWithTarget(self,target)
        self.m_action:startWithTarget(target)
    end
    function ccEaseInOut:update( percent )
        percent = self:easeProcess(percent)
        self.m_action:update(percent)
    end
    function ccEaseInOut:easeProcess(percent) -- 可替换为任意缓动函数
        -- sineEaseInOut
        return -0.5 * (math.cos(math.pi * percent) - 1) -- 三角函数简单变换
    end

    2. 具体实例

    实现一个动画,将列表中的所有节点循环移动,且移动具备先加速、后减速的特质。
    ccMoveToPeriod负责实现节点的循环移动,ccEaseInOut负责实现移动的加减速效果。

    local UIMoveToMenu = class("UIMoveToMenu",_class.UIBase)
    function UIMoveToMenu:ctor()
        _class.UIBase.ctor(self)
        local cs = cc.Director:getInstance():getWinSize()
        self:setContentSize(cs)
    end
    
    function UIMoveToMenu:onEnter()
        cclog("UIMoveToMenu:onEnter")
        -- title
        local label = cc.Label:createWithTTF("I LOVE TT", "fonts/arial.ttf", 32)
        self:addChild(label)
        label:setAnchorPoint(cc.p(0.5, 0.5))
        label:setPosition( cc.p(VisibleRect:center().x, VisibleRect:top().y - 50) )
    
        -- index label
        label = cc.Label:createWithTTF("", "fonts/arial.ttf", 22)
        label:setColor(cc.c3b(255,0,0))
        self:addChild(label)
        label:setAnchorPoint(cc.p(0.5, 0.5))
        label:setPosition( cc.p(VisibleRect:center().x, VisibleRect:top().y - 80) )
        self.label = label
    
    
        local clipcs = self:getContentSize()
        self.clipperNode = cc.ClippingNode:create()
        self.clipperNode:setPosition(cc.p(0,0)) -- cc.p(clipcs.width/2,clipcs.height/2)
        self:addChild(self.clipperNode)
        local stenSize = cc.size(clipcs.width,clipcs.height)
        self.stencilLayer = cc.Layer:create()--ccui.Layout:create()
        self.stencilLayer:setContentSize(stenSize)
        self.clipperNode:addChild(self.stencilLayer)
        self.clipperNode:setStencil(self.stencilLayer)
    
    
        local paddwidth = 10
        self.imgLst = {}
        local ball1 = cc.Sprite:create("Images/moke1.jpg")
        ball1:setName("moke1")
        ball1:setAnchorPoint(cc.p(0,0.5))
        ball1:setPosition(cc.p(5,clipcs.height/2))
        -- ball1:setScale(0.6)
        self.clipperNode:addChild(ball1)
        table.insert(self.imgLst,ball1)
    
        local ball2 = cc.Sprite:create("Images/moke2.jpg")
        ball2:setName("moke2")
        ball2:setAnchorPoint(cc.p(0,0.5))
        ball2:setPosition(cc.p(ball1:getPositionX()+ball1:getContentSize().width+paddwidth,clipcs.height/2))
        -- ball2:setScale(0.6)
        self.clipperNode:addChild(ball2)
        table.insert(self.imgLst,ball2)
    
        local ball3 = cc.Sprite:create("Images/moke3.jpg")
        ball3:setName("moke3")
        ball3:setAnchorPoint(cc.p(0,0.5))
        ball3:setPosition(cc.p(ball2:getPositionX()+ball2:getContentSize().width+paddwidth,clipcs.height/2))
        -- ball3:setScale(0.6)
        self.clipperNode:addChild(ball3)
        table.insert(self.imgLst,ball3)
    
        local ball4 = cc.Sprite:create("Images/moke4.jpg")
        ball4:setName("moke4")
        ball4:setAnchorPoint(cc.p(0,0.5))
        ball4:setPosition(cc.p(ball3:getPositionX()+ball3:getContentSize().width+paddwidth,clipcs.height/2))
        -- ball4:setScale(0.6)
        self.clipperNode:addChild(ball4)
        table.insert(self.imgLst,ball4)
    
        local colorLayer = cc.LayerColor:create(cc.c4b(255,0,0,0))
        local stenSize = self.stencilLayer:getContentSize()
        local ballHeight = ball2:getContentSize().height
        local ballWidht = ball2:getContentSize().width
        stenSize.width = ballWidht+paddwidth
        colorLayer:setContentSize(stenSize)
        colorLayer:setPosition(cc.p(ball2:getPositionX(),ball2:getPositionY()-ballHeight/2))
        self.stencilLayer:addChild(colorLayer) -- 必须在layer中添加layerColor才能正常显示下面的内容
    
    
        -- 滑动按钮
        local scrollBtn = ccui.Button:create("cocosui/animationbuttonnormal.png", "cocosui/animationbuttonpressed.png")
        scrollBtn:setPosition(cc.p(clipcs.width/2,50))
        scrollBtn:addClickEventListener(function(sender)
            print("scrollBtn:addClickEventListener")
            self:scrollImgs()
        end)
        scrollBtn:setTitleText("滑动按钮")
        self:addChild(scrollBtn)
    
    end
    function UIMoveToMenu:scrollImgs()
        local duration = 20  -- 动画持续时间
        local periodNum = 10 
        local periodWidth = self:getContentSize().width
        local easeRate = 3
    
        for i,v in ipairs(self.imgLst) do
            -- 终点位置:起点加上n个移动周期
            local endPos = cc.p(v:getPositionX()+periodWidth*periodNum,v:getPositionY())
            -- y垂直方向上静止 在x水平方向上周期性移动
            local moveto = ccMoveToPeriod:create(duration,endPos,periodWidth,nil)
            local easeInOut = ccEaseInOut:create(moveto,easeRate)
            g_ccActionManager:runAction(easeInOut,v)
        end
    end
    
    function UIMoveToMenu:onExit()
    end
    
    function UIMoveToMenuMain()
        cclog("UIMoveToMenuMain")
        local scene = cc.Scene:create()
        local rotateMenu = UIMoveToMenu:create()
        scene:addChild(rotateMenu)
        scene:addChild(CreateBackMenuItem())
        return scene
    end

    动画效果

    展开全文
  • ASP.NET网页代码模型及生命周期

    热门讨论 2009-07-28 14:22:11
    在ASP.NET中,能够使用面向对象思想和软件开发中一些思想,例如封装、派生、继承以及高级设计模式等。本章首先介绍ASP.NET中最重要概念---网页代码模型。 4.1 ASP.NET网页代码模型 在ASP.NET应用程序开发...
  • 企业信息门户建设简述

    千次阅读 2012-06-15 22:31:51
    一、企业信息门户建设背景  与标准化问题相类似,企业信息门户也是随着...在另一方面,这段时间内,基本属于企业信息化初步探索阶段,缺乏统筹,缺乏管理,以信息部门项目经理个体为单位开发需求、建设项目,在
  • 现在我有个需求,需要从CWnd直接派生一个类。当我在使用CWnd::Create时,发现有以下中断错误进入windows内部调试后,发现,是在以下位置出错意思是:没有属于该类类名。修改方式是:在.h声明文件中,定义一个...
  • 有关中国银行的考试资料 1.以下哪个同行拆借率是目前被认可和通行的(伦敦同业拆借率)2世界上第...凯恩斯的货币需求理论最大的特点是 (强调利率的作用)14菲利普斯曲线描述的是什么?(通货膨胀与失业率之间的关系)
  • 下列属于面向对象开发方法的是(A B C D)。 A) Booch B) UML C) Coad D) OMT 6. 软件危机的主要表现是(B D)。 A) 软件成本太高 B) 软件产品的质量低劣 C) 软件开发人员明显不足 D) 软件生产率低下 7...
  • 假设现在有这样一个需求,让你设计一个装修功能,用户可以动态选择不同装修功能来装饰自己房子。例如,水电装修、天花板以及粉刷墙等属于基本功能,而设计窗帘装饰窗户、设计吊顶装饰房顶等未必是所有用户都需要...
  • 软件工程教程

    热门讨论 2012-07-06 23:10:29
    根据需求对系统进行定制外,为系统编写定制应用。 第二类开发者 在创业型公司或者是独立开发者,盈利方式主要2种: 为国外公司外包开发,或者通过Google移动广告(AdMob)点击分成。 通过付费下载形式来盈利...
  • ______是UML中用来描述用户对系统的功能需求的有效模型图。 A.类图 B. 对象图 C. 组件图 D. 用例图 15. 基于UML的______不但能对数据建模,而且能对行为建模。 A.组件图 B. 类图 C. 配置图 D. 序列图
  • 但随着需求的增加,程序将越来越复杂。此时就有修改设 计的必要,重构和设计模式就可以派上用场了。最后当设计渐趋完美后,你会发现,即使需求不断增加, 你也可以神清气闲,不用为代码设计而烦恼了。 假定我们要...
  • 关于P135~P142-练习-类和对象-多态1、多态基本语法2、多态原理剖析3、案例1-计算器类4、纯虚函数和抽象类5、案例2-制作饮品6、虚析构和纯虚析构7、案例3-电脑组装需求分析8、案例3-电脑组装具体实现 1、多态...
  • ASP版WEB进销存系统v2·1

    热门讨论 2012-03-24 16:28:44
    4、如果本软件带有其它软件整合API示范例子包,这些文件版权不属于本软件官方,并且这些文件是没经过授权发布,请参考相关软件使用许可合法使用。 协议发布时间: 2009年1月1日 By cnshitou.cn
  • 8.安装布署及为简单,瞬间搭建好属于企业网站; 1.运行环境:Apache PHP MySql PhpMyadmin,本机测试建议安装集成环境; 2.前端架构:HTML CSS DIV JQUERY; 3.程序架构:PHP Mysql; 4.默认后台地址:...
  • 8、安装布署及为简单,瞬间搭建好属于企业网站; YIXUNCMS企业网站建设系统更新日志 20151018更新 1、增设展示栏目缩图 2、移动站管理权限开放; YIXUNCMS企业网站建设系统注意事项 1、共享版软件只适合...
  • c#学习笔记.txt

    2008-12-15 14:01:21
    与类不同的是,结构是值类型并且不需要堆分配。结构类型的变量直接包含结构的数据,而类类型的变量包含对数据的引用(该变量称为对象)。 struct 类型适合表示如点、矩形和颜色这样的轻量对象。尽管可能将一个点表示...
  • YIXUNCMS v2.0.4.9 SD版.zip

    2019-07-06 14:16:03
    2、您可以在遵守本协议规定和约束基础上,对软件进行程序修改、页面美化,以适合您网站的需求。 3、您拥有使用本软件构建网站中收集到全部会员资料、文章、下载、图片、留言及相关信息所有权,并独立承担与...
  • Delphi5开发人员指南

    热门讨论 2012-07-18 16:51:14
    7.4.4 TOleControl的派生类 152 7.4.5 方法 152 7.4.6 属性 153 7.5 在应用程序中使用ActiveX控件 153 7.6 发布带有ActiveX控件应用程序 154 7.7 注册ActiveX控件 155 7.8 BlackJack:一个OCX示范程序 155 7.8.1 ...
  • 答:Class可以被实例化,属于引用类型,是分配在内存堆上,Struct属于值类型,是分配在内存栈上. [Page] 26.根据委托(delegate)知识,请完成以下用户控件中代码片段填写: namespace test { public ...
  • 派生类之间进行类型转换,并且它会按照尽量少进行隐式类型转换原则经行匹配.在 一个函数调用中,如果函数是重载过,并且重载函数参数匹配分不出好坏话 (都经行同样次数隐式类型转换),那么将产生一个二义性...
  • ASP.NET精品课程+源代码

    千次下载 热门讨论 2009-01-05 20:15:51
    本课程属于计算机专业课,首先学生必须学完《计算机基础知识》、《VB.NET语言程序设计》全部内容。本课程主要讲授ASP.NET基本知识、设计思路和方法技巧,掌握ASP.NET安装、调试和企、事业单位一般网站建设...

空空如也

空空如也

1 2
收藏数 32
精华内容 12
关键字:

属于派生需求的是