百科问答小站 logo
百科问答小站 font logo



为什么使用virtual关键字在C++与C#会出现不同的效果?求解答。 第1页

  

user avatar   Ivony 网友的相关建议: 
      

简单来说的话就是C#的构造函数不负责构造。是对象构造完了之后再调用的。

要在C++里面模拟的话,你就把要写在构造函数里面的代码写成一个virtual void Initialize()方法,然后构造完了后再去调用这个方法就好了。


user avatar   minmin.gong 网友的相关建议: 
      

这件事情和virtual无关,和this的意思有关。C++的版本里,A::A()的时候this指向的是A的类型,只有完成构造了,才有一个完整的动态类型可用。




  

相关话题

  如何直接跳出深层递归而不是一层一层跳出? 
  如何开始系统的学习一个开源框架? 
  windows10 界面是用什么语言编写的?.NET在最新的操作系统中有哪些应用 
  C# 的匿名类型为什么要限制属性为只读呢? 
  一般编程的时候,使用汇编能比使用高级语言(比如C,C++,java等)有更高的运行效率吗?高能高出多少呢? 
  为什么技术主管跟我说程序员学算法不是最重要的,从工作项目中学习实际才是最重要的? 
  要设计一段C++程序将这组数按要求重新排序时,有哪些好的算法? 
  为什么在计算机科学领域及编程中不使用现代数学建立的符号体系进行操作? 
  有哪些较好的 C 语言程序源码可供新手临摹参考? 
  为什么我们需要了解编程的历史? 

前一个讨论
有什么在国外是common sense或者说是通识,常识的,是在中国不为人知的?
下一个讨论
为什么知乎上关于医患关系的主流舆论站在医生一边?





© 2025-06-10 - tinynew.org. All Rights Reserved.
© 2025-06-10 - tinynew.org. 保留所有权利