相关疑难解决方法(0)

通用lambda如何在C++ 14中工作?

auto在C++ 14标准中,通用lambda如何工作(关键字作为参数类型)?

它是基于C++模板的,每个不同的参数类型编译器生成一个具有相同主体但替换类型(编译时多态)的新函数,还是更类似于Java的泛型(类型擦除)?

代码示例:

auto glambda = [](auto a) { return a; };
Run Code Online (Sandbox Code Playgroud)

c++ lambda auto c++14

108
推荐指数
3
解决办法
4万
查看次数

派生对基类成员数据的模板类访问

这个问题是一个在问的赞助这个线程.

使用以下类定义:

template <class T>
class Foo {

public:
    Foo (const foo_arg_t foo_arg) : _foo_arg(foo_arg)
    {
        /* do something for foo */
    }
    T Foo_T;        // either a TypeA or a TypeB - TBD
    foo_arg_t _foo_arg;
};

template <class T>
class Bar : public Foo<T> {
public:
    Bar (const foo_arg_t bar_arg, const a_arg_t a_arg)
    : Foo<T>(bar_arg)   // base-class initializer
    {

        Foo<T>::Foo_T = T(a_arg);
    }

    Bar (const foo_arg_t bar_arg, const b_arg_t b_arg)
    : Foo<T>(bar_arg)
    {
        Foo<T>::Foo_T = T(b_arg);
    } …
Run Code Online (Sandbox Code Playgroud)

c++ inheritance templates scope name-lookup

60
推荐指数
2
解决办法
4万
查看次数

标签 统计

c++ ×2

auto ×1

c++14 ×1

inheritance ×1

lambda ×1

name-lookup ×1

scope ×1

templates ×1