C++ 模板机制

标签 c++ templates

<分区>

我正在尝试学习 C++ 中的模板,但我遇到了一个我找不到答案的疑问。如果这不是一个合适的问题,我提前道歉。

如果我有以下代码:

template< class T >
T func( T a, T b )
{
    return a + b;
}

然后:

int number = func( 2, 3 );

将数字简单地设置为 5 还是将一个函数

int func( int a, int b )
{
    return a + b;
}

生成?

我需要知道是否可以制作一个模板来检查某个字符串是否在文件中。

最佳答案

两者(:代码:

int number = func( 2, 3 );

将为 int 类型实例化模板函数,但编译器可能(取决于编译器选项)实际上将其优化为:

int number = 5;

关于C++ 模板机制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24224632/

相关文章:

c++ - 是否可以在一个对象中创建一个对象,该对象的构造函数是在 C++ 中从中创建它的对象

c++ - 强制模板函数参数是特定类型的迭代器

c++ - 将具有派生模板的对象传递给接受具有基本模板的对象的函数

c++ - 如何摆脱一次一个词而不是一次一行的错误输入?

c++ - 为什么 C++ 编译器在类具有引用成员时不删除复制构造函数?

c++ - 是否有可能像 Java 一样通过在 VM 中运行来使 C++ 平台独立?

c++ - 如何从 Eigen::MatrixBase<Derived> 获取存储选项

c++ - 尝试取消引用迭代器时出现段错误

c++ - 如何从 mpl::vector 实例化模板?

c++ - 根据成员的存在选择模板函数