当前位置: 首页 > news >正文

九洲建设集团网站百度上公司做网站

九洲建设集团网站,百度上公司做网站,网站架构技术,企业在线查询系统C的编译分为四步&#xff0c;最终生成一个可执行文件。 C的运行&#xff0c;就是将可执行文件交给操作系统&#xff0c;按照机器码逐步执行&#xff0c;运行功能。 先看一个非常非常有趣的例子&#xff1a; class Father{ public:virtual void f(){cout<<"I am fat…

C++的编译分为四步,最终生成一个可执行文件。
C++的运行,就是将可执行文件交给操作系统,按照机器码逐步执行,运行功能。
先看一个非常非常有趣的例子:

class Father{
public:virtual void f(){cout<<"I am father"<<endl;}};class Son : public Father{
private:void f(){cout<<"I am son"<<endl;}
};int main() {Father * ptr = new Son;ptr->f();
}

看起来是不被允许的访问私有成员。但是不仅可以编译通过,而且输出的还是

I am son

看起来非常非常的难以理解。
首先,类是编译期间的概念,所谓访问权限控制只发生在编译期间。对象分配内存才是运行期间概念。
Father * ptr = new Son;
ptr是动态类型,因为存在虚函数和虚函数表,所以变成了动态绑定。但是动态绑定发生在运行的时候,在编译期间,
ptr->f();
编译器只知道这是通过一个Father类型的指针调用一个Father类的public成员函数,编译通过完全没问题。
因为虚函数表的产生,所以运行时实际调用的是Son类的私有成员函数,但是运行时不关注访问类型,如此一来毫无问题。

我想通过这个例子说明什么呢?
代码中如果调用非虚函数,那么在编译期间就已经明确了行为;
代码中如果调用了虚函数,那么在运行期间才会明确行为。

http://www.yayakq.cn/news/308216/

相关文章:

  • 网站集群建设pptwordpress百家号
  • 只有一个页面的网站怎么做网络公司商标注册
  • 延安商城网站开发设计品牌网站建设公司哪家好
  • 小男生和大人做的网站全球最好的黄页网站
  • 自己设计logo的网站新建建设兵团科技局网站
  • wordpress卡密网站源码免费制作软件
  • 建设在线购物网站北京文化馆设计公司哪种
  • 中山商城网站建设十八款禁用黄app软件
  • 响应式网站设计开发代理公司注册手续
  • 义乌网站建设公司代理群晖 删除 wordpress
  • 免费做的网站怎么设置域名解析怀柔营销型网站建设
  • 云建站哪家好wordpress 轮廓
  • 做网站要提供什么湛江专业网站建设公司
  • WordPress轻量企业主题哈尔滨seo整站优化
  • 最火高端网站设计厂家云南工程建设信息网站
  • 网站建设 网站推广ps做网站
  • 网站建设 重庆dynamik wordpress
  • 移动网站开发百度百科网站建设的原则有哪些方面
  • 114啦建站程序建筑铝模板价格一览表
  • 建设网站需要造价91永久海外地域网名
  • 湛江建站费用做明星ps黄图网站
  • 旅游兼职网站建设小说盗版网站怎么做的
  • 武昌网站建设制作国际近期新闻
  • 东莞网站建设咨询公家居装修
  • 微信公众号文章怎么转换wordpress深圳网站排名优化团队
  • 公司网站开发部署西安响应式网站建设哪家强
  • 合肥中小企业网站制作wordpress微擎
  • 校园网站开发技术襄阳门做网站
  • 企业自建网站网站建设维护单选题
  • 广州市官网网站建设报价wordpress 二维码插件