在 C++ 中是否可以使用类似于函数参数的某种标识符来重载函数?这将允许更轻松地使用模板。对于我的特殊情况,它还会使代码看起来更好,我没有详细解释。
万一这没有多大意义,老实说,我什至不知道正确的关键字(请告诉我),这是一个玩具示例:
我想写这样的东西
function(i);
function(special_action);
function(special_action_2);
被这样理解
function(i);
function_special_action();
function_special_action_2();
实现这一目标的最佳方法是什么?到目前为止,我已经尝试过这样的虚拟枚举:
// normal action
void function(int i) { ... }
// special actions
enum dummy_enum_for_special_action { special_action };
void function(const dummy_enum_for_special_action & dummy) { ... }
我猜参数传递将被编译器优化掉。但是,有没有更好的方法来做到这一点?