小编Lan*_*der的帖子

PostgreSQL检查数组是否包含左侧数组中的任何元素

我知道在PostgreSQL中你可以运行如下查询:

SELECT (1 = ANY('{1,3,4,7}'::int[])) AS result检查右侧数组是否包含该元素1.我想知道是否有一种简单的方法可以检查右侧数组是否包含左侧数组中的任何元素.就像是:

SELECT ('{2,3}'::int[] = ANY('{1,3,4,7}'::int[])) AS result

有没有一种简单的方法可以做到这一点,而无需自己迭代左侧循环?

arrays postgresql

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

使用Qt构建时无法使用C++ 11功能

我使用Xcode的最新命令行工具在OS X 10.8.4(Mountain Lion)上.我正在尝试构建一个使用一些C++ 11特性的Qt项目(在Qt Creator中); 值得注意的是std::unique_ptr.每当我尝试构建时,我都会收到以下错误:

clang:错误:-stdlib = libc ++的无效部署目标(需要OS X 10.7或更高版本)

我的.pro文件如下:

QT       += core gui

QMAKE_CXXFLAGS += -mmacosx-version-min=10.7 -std=c++11 -stdlib=libc++
LIBS += -mmacosx-version-min=10.7 -stdlib=libc++

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = APPNAME
TEMPLATE = app


SOURCES += main.cpp\
        mainwindow.cpp

HEADERS  += mainwindow.h

FORMS    += mainwindow.ui
cache()
Run Code Online (Sandbox Code Playgroud)

我试着在其他的答案(见提出的解决方案,在这里和顶部的答案在这里),这两者都不似乎工作.

macos qt c++11 qt5

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

打开原始磁盘并获取OS X大小

使用下面的代码,我能够在我的机器上成功打开原始磁盘,但是当我得到磁盘长度时,我每次都得到0 ...

// Where "Path" is /dev/rdisk1 -- is rdisk1 versus disk1 the proper way to open a raw disk?
Device = open(Path, O_RDWR);
if (Device == -1)
{
    throw xException("Error opening device");
}
Run Code Online (Sandbox Code Playgroud)

使用这两种方法获取大小将返回0:

struct stat st;

if (stat(Path, &st) == 0)
    _Length = st.st_size;
Run Code Online (Sandbox Code Playgroud)

/

_Length = (INT64)lseek(Device, 0, SEEK_END);
        lseek(Device, 0, SEEK_SET);
Run Code Online (Sandbox Code Playgroud)

我并不完全熟悉非Windows平台上的编程,所以请原谅任何看似奇怪的东西.我的问题是:

  1. 这是在OS X下打开原始磁盘的正确方法吗?
  2. 可能导致磁盘大小返回为0的原因是什么?

有问题的磁盘是一个未格式化的磁盘,但对于那些想要从磁盘工具中获取信息的人(删除了非重要的东西):

Name :  ST920217 AS Media
Type :  Disk

Partition Map Scheme :  Unformatted
Disk Identifier      :  disk1
Media Name           : …
Run Code Online (Sandbox Code Playgroud)

c++ macos file-io disk

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

以编程方式升级应用程序权限OS X.

我已经做了一些挖掘,我看到的主要想法是使用setuid/getuid并使用授权服务(由于某种原因,在编译时给出了符号错误,但现在似乎已弃用).

我的应用程序需要能够在某一点请求root访问权限(用于访问原始磁盘驱动器),最好是使用OS X身份验证对话框(我是OS X的新手,所以我不知道该怎么称呼它).

c++ macos root

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

在Go中从本地var中消除包名称的歧义

有没有一种好的方法可以消除程序包名称和局部变量之间的歧义?如果不需要,我不想重构导入名称或变量名称。以...为例

import "path"

func foo() {
    path := "/some/path"
    // Disambiguate here
    path.Join(path, "/some/other/path")
}
Run Code Online (Sandbox Code Playgroud)

package go

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

从Go获取IP地址的域名

我正在尝试从IP地址解析主机名,这显然比我想象的更具挑战性.

我尝试过使用一些函数,包括net.LookupHost方法,但所有这些函数似乎只是返回我输入的IP地址.

这是我正在使用的代码:

package main

import (
    "fmt"
    "net"
)

func main() {
    // obtained from ping -c 1 stackoverflow.com, should print "stackoverflow.com"
    addr, err := net.LookupHost("198.252.206.16")
    fmt.Println(addr, err)
}
Run Code Online (Sandbox Code Playgroud)

dns go

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

fwrite()文件损坏C++

我有点像C++的新手(从C#转移)所以我不确定这里发生了什么.我想要做的是从文件中读取一个图像并将其写入输出文件,但每当我执行该文件的某些部分时似乎已损坏.

我已经检查了内存中的数据并且它实际匹配,所以我认为罪魁祸首必须是fwrite(),尽管它总是只是我做错了.

以下是一些示例数据:http://pastebin.com/x0eZin6K

我的代码:

// used to figure out if reading in one giant swoop has to do with corruption
int BlockSize = 0x200;
// Read the file data
unsigned char* data = new unsigned char[BlockSize];
// Create a new file
FILE* output = fopen(CStringA(outputFileName), "w+");
for (int i = 0; i < *fileSize; i += BlockSize)
{
    if (*fileSize - i > BlockSize)
    {
        ZeroMemory(data, BlockSize);
        fread(data, sizeof(unsigned char), BlockSize, file);
        // Write out the data …
Run Code Online (Sandbox Code Playgroud)

c++ file fwrite corruption

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

无法解析qmake .pro文件

我正在运行OS X Mavericks并试图将Qt4应用程序转换为Qt5.我以前从未在这台机器上编译应用程序.我在这台机器上安装了Qt 5.1.*,它可以很好地解析文件.一旦我切换到我的Qt 5.2.0工具包并查看运行设置,在我的"运行配置"下面就会出现一个警告:".pro文件'.pro'无法解析."

我在SO和qt-project网站上看​​过其他解决方案 - 其中没有一个有帮助.我的Qt 5.2.0套件一个手动添加的套件,因为我使用Homebrew安装它.

以下是我的设置的屏幕截图:

Qt 5.2.0设置

请注意,如果我在项目目录中运行qmake(/ usr/local/opt/qt5/bin/qmake),则不会输出任何错误.

这是我的.pro文件:

QT       += core widgets concurrent

TARGET = Up
TEMPLATE = app
CONFIG += c++11

SOURCES += main.cpp\
        MainForm.cpp \
    AboutForm.cpp \
    progressdialog.cpp

HEADERS  += MainForm.h \
    AboutForm.h \
    progressdialog.h

FORMS    += MainForm.ui \
    AboutForm.ui \
    progressdialog.ui

INCLUDEPATH += $$PWD/../FATX/FATX

RESOURCES += \
    MainForm.qrc

CONFIG(debug, debug|release) {
    macx: LIBS += -L$$PWD/../FATX-BUILD-OSX/debug/ -lFATX

    INCLUDEPATH += $$PWD/../FATX-BUILD-OSX/debug
    DEPENDPATH += $$PWD/../FATX-BUILD-OSX/debug

    macx: PRE_TARGETDEPS += $$PWD/../FATX-BUILD-OSX/debug/libFATX.a
} else {
    macx: …
Run Code Online (Sandbox Code Playgroud)

qmake qt5

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

使用符号构建Qt应用程序发布配置

我目前正在Windows下使用Qt Creator来构建我的应用程序,并且正在寻找使用调试符号在发布配置中构建我的应用程序但是没有找到任何MSVCC.我目前在我的应用程序中有一个错误,它只发生在发布配置而不是调试,所以能够在发布时点击断点对于解决这个问题是一个很大的帮助.

c++ windows qt

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

Ruby HMAC-SHA与Python不同

我正在将一些现有代码从Python重写为Ruby,而且我遇到了一个我似乎无法弄清楚的奇怪错误.这里我们有Python代码(可以工作):

import sha, hmac
data = 'sampledata'
data = data.encode('ascii')
des_key = hmac.new(data + "\0", "SUPERSECRET", sha).digest()[0:8]
Run Code Online (Sandbox Code Playgroud)

输出:0x64F461D377D9930C

而Ruby(我是新手)的代码:

require 'openssl'
digest  = OpenSSL::Digest::SHA.new
data = 'sampledata'
data.encode!('ascii')
puts OpenSSL::HMAC.hexdigest(digest, "SUPERSECRET", data + "\0")[0, 16]
Run Code Online (Sandbox Code Playgroud)

输出:0x563FDAF11E63277C

什么可能导致这种差异?

ruby python sha hmac

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

精灵位置比视口移动更快

我昨天在XNA中使用视口做了一些事情,并且无法弄清楚为什么我使用的精灵在改变位置时比我的视口移动得更快.我有一种感觉,它可能与不同的值类型(int与float)有关,但是有人会关心这个吗?

这是我使用的代码......

    Viewport myViewport;
    Texture2D t;
    SpriteFont f;
    Vector2 point = new Vector2(0, 0);  

    /// <summary>
    /// Allows the game to run logic such as updating the world,
    /// checking for collisions, gathering input, and playing audio.
    /// </summary>
    /// <param name="gameTime">Provides a snapshot of timing values.</param>
    protected override void Update(GameTime gameTime)
    {
        // Allows the game to exit
        if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed)
            this.Exit();
        Keys[] pressedKeys = Keyboard.GetState().GetPressedKeys();
        for (int i = 0; i < pressedKeys.Length; i++)
        {
            if (pressedKeys[i] …
Run Code Online (Sandbox Code Playgroud)

c# xna sprite viewport

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

Qt - 在Visual Studio中不更新UI文件

最近,我开始使用Qt工作(那种速成班的),并与Visual Studio集成它(如描述在这里),而现在由于某种原因,文件不会出现在作出更改后要与自己保存的.ui文件的更新中Qt设计师.

该文件正确保存(如果我在Visual Studio中单击它,它显示添加的组件),但没有添加的组件在"ui_MainForm.h"文件中引用.是否有一个步骤我错过了保存应该重新编译UI头文件的某个地方?

我也不确定这是否有所不同,但生成的文件在解决方案资源管理器中旁边有一个红色图标,如下所示:

红色图标等

c++ qt visual-studio-2010

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

标签 统计

c++ ×5

macos ×3

qt ×3

go ×2

qt5 ×2

arrays ×1

c# ×1

c++11 ×1

corruption ×1

disk ×1

dns ×1

file ×1

file-io ×1

fwrite ×1

hmac ×1

package ×1

postgresql ×1

python ×1

qmake ×1

root ×1

ruby ×1

sha ×1

sprite ×1

viewport ×1

visual-studio-2010 ×1

windows ×1

xna ×1