<分区>
问题
在 C++ 中,有没有办法将参数从 “sender” 函数传递到 “receiver” 函数?
期望/理论
void print(const char character) { std::putchar(character); }
void print(char message[], unsigned length) {
for (unsigned iterator = 0u; iterator ^ length; iterator += 1)
print(*(message + iterator));
}
void println(...) { print(...); print('\n'); std::fflush(stdout); }
在这个例子中:
• println
是“发送者” 函数并且
• print
是“接收者” 函数。
print
函数接受 println
函数的所有参数,如示例 ...
语法所示。
上下文
我确实知道 C++ 中的模板函数以及它如何纠正前面的示例
void print(const char);
void print(char[], unsigned); // They’ve been defined before already…
template <typename... types>
void println(types... arguments) { print(arguments...); print('\n'); std::fflush(stdout); }
但我想看看是否有另一种方法来解决这个问题——没有相当新的 C++-only 特性即:这个问题是如何在 C 中解决的?
我在 C++ 中以 C 风格 方式(使用 C 特性而非 C++ 特性)进行编码,因为我想知道如何构建C++ 个人特色。