gpt4 book ai didi

c++ - 我可以使用具有这种语法的模板吗?

转载 作者:行者123 更新时间:2023-11-28 07:11:19 25 4
gpt4 key购买 nike

我发现了这个 StackOverflow question在寻找某种抽象数据类型的方法时。

我想创建一个 IO 辅助函数,它将一个类(通常是一个字符串)和一个数据类型作为参数。

我也怀疑 variable y 部分。如果我想改变 y 的值,我不知道语法是否正确。

template <class message>
template <typename variable>
void inputCheck(message x, variable y)
{
cout << x;
cin >> y;
// if input y is invalid, call inputCheck again
// else, keep the input and assign it to y located outside this function
}

最佳答案

template <class OutputType, class InputType>
void InputCheck(const OutputType &x, InputType &y) {
cout << x;
cin >> y;
}

还要注意 InputType &y:y 需要作为引用传递,以便在函数外部可以看到它的修改。

x 作为 const & 传递,因为如果 OutputType 很大(结构、字符串或 vector 等),则通过引用传递速度更快。 const 确保它不会被修改。

关于c++ - 我可以使用具有这种语法的模板吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20918537/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com