c– 如何指示编译器为虚函数生成别名?

c– 如何指示编译器为虚函数生成别名?,第1张

概述有关背景,请参阅this question.基本上,我有一个类的以下定义class MyClass { virtual int foo4(double, int); }; 有没有办法指示编译器生成两个符合foo4的符号?也就是说,如果可执行文件要求动态链接器解析_ZN7MyClass4foo4Edi(MyClass :: foo4(double,i

有关背景,请参阅this question.

基本上,我有一个类的以下定义

class  MyClass {    virtual int foo4(double,int);};

有没有办法指示编译器生成两个符合foo4的符号?也就是说,如果可执行文件要求动态链接器解析_ZN7MyClass4foo4Edi(MyClass :: foo4(double,int)的符号)和其他一些符号(比如_ZN7MyClass9reserved1Ev,MyClass :: reserved1()的符号),我想要动态链接器将解析为& MyClass :: foo4(double,int).我在linux上使用相当现代的GCC.最佳答案在C中它看起来像这样:

class  MyClass {    int foo5(double,int) __attribute__((alias("_ZN7MyClass4foo4Edi")));    virtual int foo4(double,int);};int MyClass::foo4(double d,int i){}
总结

以上是内存溢出为你收集整理的c – 如何指示编译器为虚函数生成别名?全部内容,希望文章能够帮你解决c – 如何指示编译器为虚函数生成别名?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1046467.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存