小编Ali*_*786的帖子

error :: make_unique不是'std'的成员

我正在尝试编译代码审查上发布的以下线程池程序来测试它.

https://codereview.stackexchange.com/questions/55100/platform-independant-thread-pool-v4

但我得到了错误

threadpool.hpp: In member function ‘std::future<decltype (task((forward<Args>)(args)...))> threadpool::enqueue_task(Func&&, Args&& ...)’:
threadpool.hpp:94:28: error: ‘make_unique’ was not declared in this scope
     auto package_ptr = make_unique<task_package_impl<R, decltype(bound_task)>>  (std::move(bound_task), std::move(promise));
                        ^
threadpool.hpp:94:81: error: expected primary-expression before ‘>’ token
     auto package_ptr = make_unique<task_package_impl<R, decltype(bound_task)>>(std::move(bound_task), std::move(promise));
                                                                             ^
main.cpp: In function ‘int main()’:
main.cpp:9:17: error: ‘make_unique’ is not a member of ‘std’
 auto ptr1 = std::make_unique<unsigned>();
             ^
main.cpp:9:34: error: expected primary-expression before ‘unsigned’
 auto ptr1 = std::make_unique<unsigned>();
                              ^
main.cpp:14:17: error: ‘make_unique’ is not a member …
Run Code Online (Sandbox Code Playgroud)

c++ compiler-errors unique-ptr c++11 c++14

77
推荐指数
3
解决办法
8万
查看次数

Android Studio中的Gradle给出错误项目同步失败

我是Android Studio的新手.我安装了Android Studio-1.2.1.1,我安装了jdk1.7.0_40.我正面临着gradle构建的问题.作为参考,您可以检查gradle问题

我在消息中收到以下错误

Error:The newly created daemon process has a different context than expected.
Java home is different.
Expecting: 'C:\Program Files\Java\jdk1.7.0_40' but was: 'C:\Program Files\Java\jdk1.7.0_40\jre'.
Please configure the JDK to match the expected one.
<a href="open.project.structure">Open JDK Settings</a>
Run Code Online (Sandbox Code Playgroud)

我所理解的是gradle使用的是JRE,Android Studio正在使用JDK,因为这两个JAVA_HOME是不同的并且给出了错误.

我尝试下载gradle 2.3并将android studio中的gradle路径更改为此文件,仍然是同样的问题.

任何专家......

android gradle android-studio

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

在C++中的函数名之前使用'&'运算符

引用定义了对象的备用名称.引用类型"指"另一种类型.我们通过编写表单的声明符来定义引用类型&d,其中d是声明的名称.

接下来的事情是引用不是对象.相反,引用只是已存在对象的另一个名称.因此,我们将使用这些引用通过引用传递参数,以便它直接影响实际参数.

问题: 当我们函数名之前使用reference(&)时会发生什么?

我有点困惑,因为在我看来它会返回return(变量名)的别名.还是我错了?

'std::vector<std::string> &split(const std::string &s, char delim, std::vector<std::string> &elems) {
std::stringstream ss(s);
std::string item;
while (std::getline(ss, item, delim)) {
        elems.push_back(item);
    }
return elems;
}'
Run Code Online (Sandbox Code Playgroud)

c++ reference function

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

解锁Oracle表

解锁oracle表有哪些不同的技术?

我试过了。

  1. 获取锁定表的对象ID:

    从dba_objects中选择object_id,其中object_name ='YOUR TABLE NAME';

  2. 获取此ID的SID值:

    从v $ lock中选择sid,其中id1 =来自STEP1的对象ID

  3. 获取这些SID的会话值:

    从v $ session中选择sid,序列号,其中sid在其中(STEP2中以逗号分隔的SID列表)。

  4. 杀死导致锁定的会话:

    ALTER SYSTEM KILL SESSION(SID,序列号)

步骤3中的配对值,例如 ALTER SYSTEM KILL SESSION '231,23454'

但是问题是我有很多已被锁定的表,还有其他任何方法可以用来解锁表。

我正在使用SQLDeveloper解锁吗?

mysql oracle session locking

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

[Simba] [ImpalaJDBCDriver](500051)ERROR处理查询/语句

我在针对impala中的数据库执行查询时遇到以下错误.与其他数据库一起工作正常.

错误跟踪如下.

[Simba][ImpalaJDBCDriver](500051) ERROR processing query/statement. Error Code: select * from test_table limit 1, SQL state: {1}, Query: {2}.[]
java.sql.SQLException: [Simba][ImpalaJDBCDriver](500051) ERROR processing query/statement. Error Code: [Simba][JSQLEngine](12010) The table "test_table"    could not be found., SQL state: HY000, Query: select count(*) from test_table.
            at     com.cloudera.impala.hivecommon.dataengine.HiveJDBCDataEngine.prepare(Unknown Source)
            at com.cloudera.impala.jdbc.common.SStatement.executeNoParams(Unknown Source)
            at com.cloudera.impala.jdbc.common.SStatement.executeQuery(Unknown Source)
Caused by: com.cloudera.impala.support.exceptions.GeneralException: [Simba][ImpalaJDBCDriver](500051) ERROR processing query/statement. Error Code: [Simba][JSQLEngine](12010) The table "test_table" could not be found., SQL state: HY000, Query: select count(*) from test_table.
            ... 3 more
Run Code Online (Sandbox Code Playgroud)

如果我执行 …

hadoop jdbc cloudera impala

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

是否在不使用IDE的情况下构建java或c#项目

我正在阅读有关MVN的教程,他正在解释如何使用apache maven在终端中使用命令构建项目.我在我的系统上安装了eclipse并使用它进行了示例,所以我想为什么要阅读CLI,因为我们有很多好的IDE(eclipse,sts,visual studio(c#)等).因此阅读CLI命令会有所帮助.

c# java eclipse maven

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

结构值无法在c ++中正确打印

我有一个String消息,我正在拆分字符串并将其存储在一个结构中.

 struct logMessage
 {
   int cefVersion;
   char *deviceVendor;
   char *deviceProduct;
   char *deviceVersion;
   int signatureID;
   char *eventName;
   int severity;
   char *objectIp;
   char *cs2;
   char *suser;
   int logonID;
   char *logonType;
}; 
Run Code Online (Sandbox Code Playgroud)

我已经拆分了字符串并将其存储在结构中,我的代码是这样的.

'split(string str)
{       
            string logmsg=str;
    logMessage lmsg;
    string delimiter = "|";
    size_t pos = 0;
    string token;
    int tokens=1;
    while ((pos = logmsg.find(delimiter)) != string::npos) {
            token = logmsg.substr(0, pos);
            cout <<"\n"<< token <<endl;
            logmsg.erase(0, pos + delimiter.length());

        switch(tokens){

                case 1:lmsg.cefVersion=atol((char *)token.c_str());
                   cout<<"\t token="<<token.c_str();
                   break;
                case 2:lmsg.deviceVendor=(char *)token.c_str();
                   cout<<"\t token="<<token.c_str()<<"\tlmsg.deviceVendor="<<lmsg.deviceVendor; …
Run Code Online (Sandbox Code Playgroud)

c++ string struct c++11

0
推荐指数
1
解决办法
220
查看次数

捕获log4j输出

我们log4j2在我们的系统中广泛使用,并使用它进行配置log4j2.xml.

现在我需要一个运行的新应用程序,jobs我想分别捕获在时间X和Y之间产生的所有日志并将其放入数据库中.从我们的框架正常记录应该像往常一样(到文件或log4j2.xml指向的地方),但从时间X到时间Y.

我还希望捕获所有日志记录,最好是一个字符串列表或可以保存在数据库表中的东西.

我的想法是创建一个新的Appender(捕获所有日志输出)并动态添加/删除该appender以启动和停止日志记录?那会有用吗?我也可以在框架类中重新配置记录器吗?

java logging log4j log4j2

0
推荐指数
1
解决办法
4240
查看次数