小编Ale*_*ecs的帖子

Winsock接受超时

使用阻塞winsockets时是否可以设置超时接受函数?就像我们可以通过setsockopt来recv和发送函数一样?

似乎不可能,但我想确保.

c sockets windows winsock

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

TIMESTAMP和SYSDATE

比较简单的方法是TIMESTAMP类型的字段进入最后n小时吗?我可以根据日期和时间进行计算,但有可能是这样的

timestamp > SYSDATE - 1
Run Code Online (Sandbox Code Playgroud)

(SYSDATE - 1)是昨天,据了解,这将检查时间戳是否在过去24小时内.

提前致谢.

sql oracle time date

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

_wtoi 返回零:输入零还是输入非数字?

_wtoi当无法转换输入,因此输入不是整数时,返回零。但同时输入可以为零。这是确定输入是否错误或为零的方法吗?

c++ visual-c++

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

TryEnterCriticalSection

我不确定我是否正确理解.TryEnterCriticalSection只召唤一次,它不是坚持EnterCriticalSection?例如,如果我写了类似的东西

if(TryEnterCriticalSection (&cs))
{
//do something that must be synh
LeaveCriticalSection(&cs);
}
else
{
//do other job
}
//go on
Run Code Online (Sandbox Code Playgroud)

如果TryEnterCriticalSection返回false则该部分do something that must be synh永远不会被完成,do other job部分将被执行然后go on呢?

c++ windows critical-section

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

按行ROW_NUMBER

UPD:感谢所有人,主题关闭,睡觉后我明白了一切=)

我在理解OVER子句和ROW_NUMBER函数时遇到问题.简单的表 - 名称和标记.我想计算每个名字的平均分数.

SELECT top 1 with ties name,  ROW_NUMBER() over (PARTITION BY name ORDER BY name) as number
FROM table 
ORDER BY AVG(mark) OVER(PARTITION BY name)
Run Code Online (Sandbox Code Playgroud)

它会显示这样的东西,我理解为什么 - 这就是ROW_NUMBER()的作用

name|number
Pete 1
Pete 2
Run Code Online (Sandbox Code Playgroud)

但如果我写

SELECT top 1 with ties name,  ROW_NUMBER() over (PARTITION BY name ORDER BY name) as number
FROM table 
ORDER BY AVG(mark) OVER(PARTITION BY name), number
Run Code Online (Sandbox Code Playgroud)

它会显示出来

name|number
Pete 1
Run Code Online (Sandbox Code Playgroud)

而这次我不明白ORDER BY如何与ROW_NUMBER()函数一起使用.有人可以向我解释一下吗?

sql t-sql

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

std :: vector索引总是更快吗?

当使用std :: vector时,通过索引而不是使用迭代器来传递所有向量的元素总是更快?

我写了简单的愚蠢测试,VS 2010,优化被禁用

#include <vector>
#include <iostream>
#include <ctime>

const int SIZE = 100000;    

int main()
{    
    std::vector<int> vInt;
    int i, temp;
    srand(time(0));
    for(i = 0; i<SIZE; i++)
        vInt.push_back(rand());

    time_t startTime, endTime;
    std::vector<int>::iterator it = vInt.begin(), itEnd = vInt.end();
startTime = clock();
for( ; it != itEnd; it++)
        temp = *it;
    endTime = clock();
    std::cout<<"Result for iterator: "<<endTime - startTime;

    i = 0;
    int size = vInt.size();
    startTime = clock();
    for(; i<size; i++)
        temp = vInt[i];
    endTime = …
Run Code Online (Sandbox Code Playgroud)

c++ indexing iterator stl stdvector

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

函数返回char*

编写一个返回char*的函数是否正确?

像这样的东西:

char * func()
{  
 char *c = new char[3];
 strcpy(c, "hi");
 c[2] = '\0';
 return c;
}

int main()
{
 char *c;
 c = func();
 //code using c
 delete [] c;
 return 1;
}
Run Code Online (Sandbox Code Playgroud)

它有效,但它是否正确?

c++ char

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

在C++中将字符串转换为int并测试成功

可能的重复:
将字符串转换为 int C++
检查字符串是否为数字的最快方法是什么?

我需要将字符串转换为 int 并且我需要知道转换是否成功。但是 number 可以为零,所以我不能使用atoi等。要转换的字符串我从文件中读取。

c++ string type-conversion

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

新的 Qt 信号语法错误与重载没有这个

当我写像

 connect(m_someClasspointer, &SomeClassName::SignalA, &CurrentClass::slotMethod);
Run Code Online (Sandbox Code Playgroud)

我收到错误

error: no matching function for call to 'QtPrivate::FunctionPointer<void (CurrentClass::*)()>::call(void (CurrentClass::*&)(), QObject*&, void**&)'
             FuncType::template call<Args, R>(static_cast<QStaticSlotObject*>(this_)->function, r, a);
Run Code Online (Sandbox Code Playgroud)

当与

 connect(m_someClasspointer, &SomeClassName::Signal, this, &CurrentClass::slotMethod);
Run Code Online (Sandbox Code Playgroud)

一切都好。但是QObject中存在重载

inline QMetaObject::Connection QObject::connect(const QObject *asender, const char *asignal,
                                        const char *amember, Qt::ConnectionType atype) const
Run Code Online (Sandbox Code Playgroud)

所以我完全不明白为什么第一个变体不起作用..

c++ qt signals-slots qt5

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