小编Chr*_*eis的帖子

C++ 11 lambda作为成员变量?

可以将lambda定义为类成员吗?

例如,是否可以使用lambda而不是函数对象重写下面的代码示例?

struct Foo {
    std::function<void()> bar;
};
Run Code Online (Sandbox Code Playgroud)

我想知道的原因是因为以下lambda可以作为参数传递:

template<typename Lambda>
void call_lambda(Lambda lambda) // what is the exact type here?
{ 
    lambda();
}

int test_foo() {
    call_lambda([]() { std::cout << "lambda calling" << std::endl; });
}
Run Code Online (Sandbox Code Playgroud)

我想如果lambda可以作为函数参数传递,那么也许它们也可以存储为成员变量.

经过更多的修修补补后,我发现这有效(但这有点毫无意义):

auto say_hello = [](){ std::cout << "Hello"; };
struct Foo {
    typedef decltype(say_hello) Bar;
    Bar bar;
    Foo() : bar(say_hello) {}
};
Run Code Online (Sandbox Code Playgroud)

c++ lambda c++11

45
推荐指数
5
解决办法
4万
查看次数

使用select语句在表值函数中传递参数

我创建了一个表值返回函数,它返回一个表.这是我的功能调用如下

SELECT * FROM dbo.[StateFixedTaxesCalculation](3020,16,1,1006)
Run Code Online (Sandbox Code Playgroud)

它对我来说工作正常,现在我想在一个选择的语句中使用这个函数调用,所以我可以传递16哪个基本上是employeeId动态的.

所以我决定使用内部连接与该函数返回的表.像这样

SELECT * FROM Employee as E
INNER JOIN  dbo.[StateFixedTaxesCalculation](3020,16,1,1006) as TC   ON TC.EmployeeId=E.EmployeeId
Run Code Online (Sandbox Code Playgroud)

但是现在我怎么能一个接一个地传递16动态值employeeId.

sql t-sql sql-server sql-function sql-server-2008

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

为什么我们在tomcat logging.properties中需要两次写处理程序?

来自docs:

handlers = 1catalina.org.apache.juli.FileHandler, \
       2localhost.org.apache.juli.FileHandler, \
       3manager.org.apache.juli.FileHandler, \
       java.util.logging.ConsoleHandler

.handlers = 1catalina.org.apache.juli.FileHandler, 
       java.util.logging.ConsoleHandler
Run Code Online (Sandbox Code Playgroud)

我没有找到任何解释为什么需要写处理程序和后.handlers?类似属性文件是否有通用规则?谢谢.

java logging tomcat properties

33
推荐指数
2
解决办法
4157
查看次数

在"使用调试信息发布"模式下构建Qt?

有没有办法在"Release with Debug info"模式下构建Qt?我的应用程序仅在"发布"模式下崩溃(在调试模式下工作正常),似乎问题来自Qt(可能是Qt中的错误).所以我想看看Qt的调试信息.

Qt docs有"debug","release"但不是"release with debug"模式.

[Upate]

我的应用程序适用于Mingw 32位Release/Debug和VSC++ Compiler 64bit Debug.

仅在VSC++ 64Bit Release上崩溃

有小费吗 ?

c++ qt qmake qt4

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

如何为Qt应用程序创建可执行文件?

我一直在互联网上搜索有关这方面的一些有用且清晰的信息,令人讨厌的是,这样一件微不足道的事情很难做到.

我需要的是为我的Qt项目创建一个可执行文件,以便在其他计算机上运行它.我的项目在Qt Creator中运行得很好,但是当我尝试运行在release文件夹中创建的可执行文件时,我得到了一些dll丢失的错误,虽然我已将它们全部放在我的.exe的同一目录中但我现在得到了一些关于dll(QtCore4.dll)中的程序中的入口点的错误.

该解决方案看起来像是一个静态链接,我发现了很多关于它的信息,但它们都没有真正帮助我.这是我到目前为止所尝试的:

  • 如上所述,使用在release文件夹中创建的可执行文件.
  • 静态链接,遵循本教程(以及其他许多内容,几乎都是一样的):http://doc.qt.io/qt-4.8/deployment-windows.html但是在"configure -static"期间我收到以下错误:NMAKE:致命错误U1077:'"c:\ Arquivos de programas\Microsoft Visual Studio 9. 0\VC\BIN\cl.EXE"':返回代码'0x2'停止.构建qmake失败,返回代码2

为此,我找不到任何解决方案,所以我在这里,只是尝试为我的Qt项目创建一个可执行文件,希望你们能在这里给我一些启示.

c++ windows qt visual-studio

18
推荐指数
2
解决办法
6万
查看次数

QTreeView复选框

我知道这已被问了很多次,但我似乎无法找到任何相关的东西.

使用Qt打包的simpletreemodel教程,如何添加复选框?

c++ python checkbox qt pyqt

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

Qt中的Q_PROPERTY?

我无法弄清楚为什么需要它,请阅读:http: //doc.qt.io/qt-4.8/properties.html#requirements-for-declaring-properties

仍然无法真正理解它的使用.任何形式的帮助都会很棒!

c++ qt properties qt4

9
推荐指数
1
解决办法
1万
查看次数

Qt单元测试设置

我已经使用Qt一段时间了......而且我决定开始使用单元测试(或至少尝试).但我不知道从哪里开始...我已经读过这个:http: //doc.qt.io/qt-5/qttest-index.html并了解如何使用QtTest类.但是其他任何我不明白的事情......测试应该和我的实际项目在同一个项目中吗?或者也许在单独的项目中?或许在许多分离的项目?如果是这样,分离它们的标准是什么?

当我写一些单元测试时,我该如何使用它们?我的意思是,我会编译它们,但那么呢?我刚刚运行了可执行文件?我是否需要单独编译我​​的项目或以某种方式将其包含在QtTest中?我可以自动执行该过程,因此我的所有单元测试都将自动运行吗?

哇...那是很多问题:)你能给我链接到一些教程,其中这些(我猜基本的)事情都包括在内吗?

qt unit-testing

8
推荐指数
1
解决办法
892
查看次数

cbegin()/ cend()vs constBegin()/ constEnd()

Qt 5.0引入了迭代器方法,cbegin()并引入了cend()不同的容器类,如QListQMap.

但是这些课程中也有方法constBegin()constEnd()方法.

所有这些方法都是constSTL风格的const_iterator.

  • 难道cbegin()/ cend()比相同的功能constBegin()/ constEnd()?对我来说似乎是这样,但在QList,QMap容器类的文档中没有说明任何内容.
  • 是否有人应该使用cbegin()/ cend()而不是constBegin()/ constEnd()反之亦然?

c++ qt iterator qt5

7
推荐指数
1
解决办法
746
查看次数

具有方向的QML渐变

QML渐变仅允许在矩形中从上到下.该文件说,它必须通过旋转和裁剪的组合来完成.

我刚刚开始学习QML(和HTML/CSS的经验很少).这是我的代码,我认为可以更好地改进:

import QtQuick 1.0

Rectangle {
    width: 400; height: 400;

    Rectangle {
    width: 567; height: 567;

    gradient: Gradient {
            GradientStop {
        position: 0.0;
        color: "white";
        }
            GradientStop {
        position: 1.0;
        color: "blue";
        }
    }
    x: 116.5;
    transformOrigin: Item.Top;
    rotation: 45.0;
    }
}
Run Code Online (Sandbox Code Playgroud)

你能否建议一下这方面有什么更好的方法?

qt gradient qml qt-quick

6
推荐指数
3
解决办法
8278
查看次数