小编Ole*_*exy的帖子

从 lambda 返回值与声明位于同一行

有时用函数表示值更容易,而 lambda 很适合这样做。但是有没有办法从 lambda 声明中返回值呢?

例如:

int i = []{return 2;};
Run Code Online (Sandbox Code Playgroud)

产生错误。如何使 lambda 声明返回2而不添加任何新代码行?

c++ lambda declaration function c++11

4
推荐指数
1
解决办法
679
查看次数

类继承的 C++ 问题

我有一些变量和函数的基类以及多个子类。我想尽可能减少子类中所需的代码量。

我的代码示例:

#include <iostream>

class base{
public:
   int a = 10;
   int b;
   void print()
   {
      std::cout << a <<std::endl;
   }
};

class child: public base
{
   public:
      int a;
};

int main()
{
    child ch;
    ch.a = 20;
    ch.print();

}
Run Code Online (Sandbox Code Playgroud)

由于打印了结果编号 10,这意味着使用了基类变量a,但我需要使用子类变量(如果存在)。所以这个例子的预期输出是 20。

c++

4
推荐指数
1
解决办法
73
查看次数

标签 统计

c++ ×2

c++11 ×1

declaration ×1

function ×1

lambda ×1