草庐IT

azure-virtual-machine

全部标签

c++ - 链接器错误 : wants C++ virtual base class destructor

我有一个链接错误,链接器提示说我的具体类的析构函数正在调用它的抽象父类(superclass)析构函数,而它的代码丢失了。这是在MacOSX上从XCode使用GCC4.2。我看到了g++undefinedreferencetotypeinfo但这并不完全相同。这是链接器错误消息:Undefinedsymbols:"ConnectionPool::~ConnectionPool()",referencedfrom:AlwaysConnectedConnectionZPool::~AlwaysConnectedConnectionZPool()inRKConnector.old:symbo

c++ - constexpr 和 virtual

我一直在想为什么constexr和virtual是互斥的,有人补充说:...constexprisallaboutexecutionatcompiletime;ifwe'reexecutingthefunctionatcompiletime,weobviouslyknowthetypeofdatauponwhichit'sactingatcompiletimeaswell,solatebindingclearlyisn'trelevant.但是,即使在编译时,动态类型也可能与静态类型不同,并且可能存在需要动态类型的情况:classA{public:/*virtual*/constexp

c++ - 为什么 C++ 中的虚函数称为 'virtual' ?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。所以我对C++中虚函数的概念和像this这样的线程是新手做好销售这个概念。好的,我相信。但是为什么虚函数被称为“virtual”呢?我的意思是这样的功能是“具体的”像往常一样的功能/方法不是吗?如果有人能解释这个词的选择用“虚拟”来命名这个概念,那就太好了。

c++ - 是否可以在不对抽象的父类中的函数使用 virtual 关键字的情况下覆盖 C++ 子类中的函数?

classParent{public:voidfunc1();//Completemeaningfuldefinitioninparentgiven.virtualHRESULTfunc2()=0;//BcozofthisfunctionParentclassisabstract.};classChild:publicParent{public:voidfunc1();//Differentdefinitioninchild.};这在C++中可行吗?我正在重写func1(),它不是虚拟的,它已经在父抽象类中有一个定义。 最佳答案 [

C++多态/继承问题: Redefinition of base functions vs virtual functions

我知道派生类可以简单地“重新定义”基类成员函数,并且当派生类对象的函数是被调用,派生类中定义的函数被使用,但是......这不会使“virtual”关键字变得多余吗?我读过这两种情况之间存在一些明显的显着差异(即:如果你有一个指向派生类的基类指针,你调用一个函数,如果它是虚拟的,则派生类函数将是调用,但如果不调用,将调用基类函数)。换句话说,能够重新定义成员的目的是什么用作非虚拟函数,这是一个常用的练习?就我个人而言,这似乎会变得非常困惑。谢谢! 最佳答案 对于最常见的OOP语言(Java、SmallTalk、Python等),最常

C++ 虚函数 : Can the linker remove entries in the virtual function table which aren't called?

这个问题是对eliminateunusedvirtualfunctions的一种跟进,这对我的兴趣来说还不够深入。问题:在定义具有虚函数的类时,编译器为虚函数表分配存储空间,并在表中存储指向函数的指针。这会导致链接器保留这些函数的代码,而不管它们是否被调用过。这可能会导致大量死代码保留在可执行文件中,即使编译器优化设置要求消除死代码也是如此。现在,如果在可执行文件中没有任何地方有特定虚函数的调用(或者换句话说,访问虚函数表的相应槽),则可以从虚函数中省略相应的函数指针表,链接器将删除该函数的代码,并可能进一步省略其他未引用的代码。显然,这不能由编译器完成,因为只有在链接时才会清楚是否调

c++ - msvcprtd.lib(MSVCP100D.dll): fatal error LNK1112: module machine type 'X86' conflicts with target machine type 'x64'

我创建了一个vs2010win32程序(操作系统:Win8-64bit)然后,我尝试通过这样做将这个win32程序转换为x64:ConfigurationManager->newsolutionplatform(selectx64)->copysettingsfromwin32vs2010在之前的win32程序的基础上新建了一个x64程序。但是,当我尝试编译和运行x64程序时,出现一个错误:msvcprtd.lib(MSVCP100D.dll):fatalerrorLNK1112:模块机器类型“X86”与目标机器类型“x64”冲突通过重命名msvcprtd.lib的win32版本和x6

windows - Azure Web 角色入口点和 .aspx 页面处理程序如何在不同的进程中运行?

我正在玩thisAzurewebrolesample.它包含一个派生自RoleEntryPoint的类和一个包含按钮单击处理程序的.aspx页面。我在Azure模拟器中测试它。我输入了以下代码(取自fromhere)stringuserName=System.Security.Principal.WindowsIdentity.GetCurrent().Name;在角色OnStart()和按钮点击处理程序中。当角色OnStart()被调用时,它恰好在MachineName\\MyLogin帐户下的WaIISHost.exe中运行,当按钮处理程序代码被调用时恰好在MachineName\

windows - 如何在 Windows Azure 中安装和使用 COM 对象?

我有很多要在WindowsAzure计算服务中运行的32位C++代码。该代码已打包到COM服务器中,因此我想从将为外部请求提供服务的托管代码中使用该服务器。我用谷歌搜索但找不到有关如何在WindowsAzure下部署COM服务器的任何详细信息。我怎么做?有向导吗?有什么限制? 最佳答案 我认为您可以将COM对象部署为二进制文件,然后使用启动脚本注册它们-参见http://msdn.microsoft.com/en-us/gg433178-“练习2:使用启动任务注册COM组件” 关于win

windows - ClientPerfCountersInstaller.exe 停止工作,现在无法运行 Azure 解决方案

我将VisualStudio2013与WindowsAzureSDK2.3结合使用。莫名其妙地,在单击StartwithoutDebugging后,我的解决方案需要一段时间才能启动,然后弹出一个错误,提示ClientPerfCountersInstaller.exe停止工作。我点击了SendInformation按钮将错误发送给MS,然后它退出了。“这很奇怪,”我想。我关闭VS,重新打开,然后再试一次。一样。重新启动计算机,重新打开VS,但现在,它只是在启动解决方案时挂起(有或没有调试)。Azure计算和存储模拟器都启动了(我可以在系统托盘中看到),但没有其他任何反应。我最终从VS收到