将 "Alias" 传递给 C++ 中的函数
Passing "Alias" to functions in C++
如何将这样的东西传递给函数
using PIN1 = GpioOutputB1;
using PIN2 = GpioOutputB2;
using PIN3 = GpioOutputB3;
using PIN4 = GpioOutputB4;
using PIN5 = GpioOutputB5;
将这些 PIN1
、PIN2
... 等传递给这样的函数。
static void initilize() {
PINx::setOutput();
}
抱歉,由于官方原因我没有包含原始代码,但问题类似。
作为模板参数呢?
template <typename PINx>
static void initilize () {
PINx::setOutput();
}
En passant: 我想 setOutput()
是一个 static
方法。
鉴于(在此示例中)无法推导出 PINx
,您必须调用 initialize()
显式传递类型
initialize<PIN3>();
还要考虑到您也可以使用原始类型调用函数
initialize<GpioOutputB3>();
如何将这样的东西传递给函数
using PIN1 = GpioOutputB1;
using PIN2 = GpioOutputB2;
using PIN3 = GpioOutputB3;
using PIN4 = GpioOutputB4;
using PIN5 = GpioOutputB5;
将这些 PIN1
、PIN2
... 等传递给这样的函数。
static void initilize() {
PINx::setOutput();
}
抱歉,由于官方原因我没有包含原始代码,但问题类似。
作为模板参数呢?
template <typename PINx>
static void initilize () {
PINx::setOutput();
}
En passant: 我想 setOutput()
是一个 static
方法。
鉴于(在此示例中)无法推导出 PINx
,您必须调用 initialize()
显式传递类型
initialize<PIN3>();
还要考虑到您也可以使用原始类型调用函数
initialize<GpioOutputB3>();