当前位置:  开发笔记 > 编程语言 > 正文

调用函数时,是否可以在被调用函数的名称后附加数字或字符?

如何解决《调用函数时,是否可以在被调用函数的名称后附加数字或字符?》经验,为你挑选了1个好方法。

所以我有多个函数,否则它们具有相同的名称,但每个函数在函数名的末尾只有一个不同的数字,如下所示:

void bark0() {
    cout << "A small amount of dogs are barking" << endl;
}

void bark1() {
    cout << "Some dogs are barking" << endl;
}

void bark2() {
    cout << "Bark Bark!" << endl;
}

是否有可能从for循环调用所有这些,以便int i将是当前要调用的函数?

for (int i = 0; i < 3; i++) {
    // Call bark + i at the end || For example bark2(); when i == 2
}

或者是否可以调用以用户输入的数字结尾的函数?

int input;
cin >> input;

bark+input();

我知道你可以使用指向函数的指针映射,但我想知道是否有一种方法可以调用这样的函数.

编辑:我不想使用参数,因为函数应该做完全不同的事情.这些树皮0,1和2只是例子.



1> tletnes..:

您无法在C/C++中执行此操作,因为编译后函数的名称不是机器代码的一部分.

我会通过创建一个函数指针数组然后调用循环中的索引函数指针来解决这个问题.

推荐阅读
sx-March23
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有