小编wal*_*cer的帖子

在创建c ++文件时,XCode 4.1似乎不再创建头文件,任何想法如何制作模板?

为什么Apple似乎非常讨厌C++; 这在以前的版本中始终适用于Xcode,并且仍然适用于.m文件.为什么他们会删除人们每天实际使用的功能?并非每个人都只使用Objective-C.有没有办法让文件模板再次执行此操作?

c++ xcode xcode4

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

为什么JSON .Net不能序列化静态或const成员变量?

我无法在任何地方找到答案,但是当我尝试使用static或const成员变量序列化结构或类时,默认情况下它们不会序列化.如果我尝试通过设置强制序列化MemberSerialization.OptIn,我会收到错误.

恩.

[JsonObject(MemberSerialization.OptIn)]
public class Test
{    
    [JsonProperty]
    public int x = 1;

    [JsonProperty]
    public static int y = 2;
}
Run Code Online (Sandbox Code Playgroud)

如果我尝试使用以下命令序列化此类:

Test t = new Test();
string s = JsonConvert.SerializeObject( t );
Run Code Online (Sandbox Code Playgroud)

我收到了错误Error getting value from 'y' on 'Test'.如果y是const,则会发生同样的情况.

我的理论是静态和const值存储在特殊的内存中,并且由于某种原因,Json序列化器试图访问它们.这完全是一种预感,我在C#Reference for Static中看不到任何帮助.我对C#比较陌生 - 在这一点上,这真的是一个好奇的问题.

.net c# json.net

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

使用C++在NxN数组中查找M个最大元素的优化方法

我需要一种快速的方法来找到NxN阵列中M个最大元素的2D位置和值.

现在我这样做:

struct SourcePoint {
    Point point;
    float value;
}

SourcePoint* maxValues = new SourcePoint[ M ];

maxCoefficients = new SourcePoint*[
for (int j = 0; j < rows; j++) {
    for (int i = 0; i < cols; i++) {
        float sample = arr[i][j];
        if (sample > maxValues[0].value) {
            int q = 1;
            while ( sample > maxValues[q].value && q < M ) {
                maxValues[q-1] = maxValues[q];      // shuffle the values back
                 q++;
            }
            maxValues[q-1].value = sample;
            maxValues[q-1].point = …
Run Code Online (Sandbox Code Playgroud)

c c++ sorting optimization caching

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

OpenCL图像直方图

我正在尝试在OpenCL中编写直方图内核来计算RGBA32F输入图像的256个bin R,G和B直方图.我的内核看起来像这样:

const sampler_t mSampler = CLK_NORMALIZED_COORDS_FALSE |
                           CLK_ADDRESS_CLAMP|
                           CLK_FILTER_NEAREST;


__kernel void computeHistogram(read_only image2d_t input, __global int* rOutput,
                               __global int* gOutput, __global int* bOutput)
{

    int2 coords = {get_global_id(0), get_global_id(1)};

    float4 sample = read_imagef(input, mSampler, coords);

    uchar rbin = floor(sample.x * 255.0f);
    uchar gbin = floor(sample.y * 255.0f);
    uchar bbin = floor(sample.z * 255.0f);

    rOutput[rbin]++;
    gOutput[gbin]++;
    bOutput[bbin]++;


}
Run Code Online (Sandbox Code Playgroud)

当我在2100 x 894图像(1,877,400像素)上运行时,当我总结每个通道的直方图值时,我倾向于只能看到记录的1,870,000个总值.每次都是不同的数字.我确实期待这一点,因为偶尔两个内核可能从输出数组中获取相同的值并递增它,有效地取消了一个增量操作(我假设?).

1,870,000输出用于{1,1}工作组大小(如果我没有另外指定,则默认设置似乎).如果我强制像{10,6}那样强大的工作组大小,我的直方图中的总和会大得多(与工作组大小的变化成比例).这对我来说似乎很奇怪,但我猜测会发生什么是组中的所有工作项同时增加输出数组值,所以它只算作一个增量?

无论如何,我在规范中读到OpenCL没有全局内存同步,只使用其__本地内存在本地工作组内同步.nVidia的直方图示例将直方图工作量分解为一堆特定大小的子问题,计算它们的部分直方图,然后将结果合并为一个直方图.对于任意大小的图像来说,这似乎都不是很好.我想我可以用虚拟值填充图像数据......

作为OpenCL的新手,我想我想知道是否有更简单的方法来做到这一点(因为它看起来应该是一个相对简单的GPGPU问题).

谢谢!

gpgpu opencl gpu-programming

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

大文件上传

我正在开发一个允许在Web服务器上上传和存储大文件的应用程序.目前我正在使用PHP通过http处理POSTed文件.我有我的php.ini设置:

upload_max_filesize = 100M
post_max_size = 100M
memory_limit = 128M
max_input_time = 6000
max_execution_time = 6000
Run Code Online (Sandbox Code Playgroud)

似乎没有为LimitRequestBody设置任何apache指令.我使用APC来跟踪文件上传进度.由于某种原因,文件上传始终在50M时完全停止.

我知道http不是文件上传最有效的解决方案,但这个应用程序需要用户友好,我知道ftp存在防火墙问题.

我想知道是否有人能给我一些关于什么是在50M时停止下载的建议?它必须是某种配置设置.

另外,还有其他方法我应该考虑使用javascript/PHP和http进行文件上传.我已经研究过java applet并使用flash.可能会使用swfuploader,但如果它的服务器配置导致我的上传通过http失败,我真的不知道java applet或flash uploader是如何解决的.

我应该注意到,我希望能够提出一个解决方案,允许我在某个时候上传非常大的1 GB文件.

我使用非常简单的PHP来接收文件

$uploaddir = '/'.$_POST['upload_directory'].'/';
$uploadfile = $uploaddir . basename($_FILES['file']['name']);

if (is_uploaded_file($_FILES['file']['tmp_name'])) {
    if (move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile)) {  some success code; }
Run Code Online (Sandbox Code Playgroud)

显然有一点比这更多,但这是我如何处理上传的要点.

php upload file

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

OpenCV 2.1 Mac OSX上简单视频流的内存泄漏

即使只是做最基本的视频流也会导致内存泄漏.

cvNamedWindow("1",0);
CvCapture *fc = cvCaptureFromCAM(0);
IplImage *frame = NULL;
CvSize frameSize;
frameSize.height = cvGetCaptureProperty(fc, CV_CAP_PROP_FRAME_HEIGHT);
frameSize.width = cvGetCaptureProperty(fc, CV_CAP_PROP_FRAME_WIDTH);

while (1) { 
    IplImage *wrkImage = NULL;

    frame = cvQueryFrame(fc);

    if (!frame) 
        break;

    wrkImage = cvCreateImage(frameSize, IPL_DEPTH_8U, 3);
    cvCopy(frame, wrkImage, NULL);

    cvShowImage("1", wrkImage);

    char c = cvWaitKey(33);
    if (c == 27) {
        break;
    }

    cvReleaseImage(&wrkImage);
}
Run Code Online (Sandbox Code Playgroud)

显然根据"学习OpenCV"这本书,我不应该释放"框架",因为它是由openCV管理的,我可以"如果我这样做就会遇到问题".如果我在调用cvQueryFrame后释放帧指针,确实会导致问题.本书还建议将cvQueryFrame指向的图像复制到其他地方,因为cvQueryFrame可能会重复地回收相同的内存块.因此我在每个帧周期结束时释放wrkImage.程序在几分钟后崩溃,并像疯了一样泄漏记忆!让我相信一些重要的事情就像整个画面一样被泄露.我想知道是否有人在Mac上使用OpenCV 2.1获取视频内容,并且发现这也是一个问题.或者,如果有人能在我的代码中看到一个漏洞,我就错过了.

任何来自OpenCV大师的建议都会非常感激!

编辑:仔细踩过程序并检查内存后,我怀疑问题出在cvShowImage()上.cvShowImage似乎分配了一个永远不会被回收的帧的内存.然后发现这个链接 OpenCV cvShowImage Memory Leaks OSX似乎同意我的怀疑.可能在这里接近解决方案......很高兴看到我不疯狂!

更新:Macports OpenCV现在已经很好了(现在已经有几个月了.我想我应该在这里发帖,这样人们就不会因为他们的OpenCV构建/安装使用macport而气馁.Macports是安装OpenCV的好方法.

c opencv memory-leaks

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

如何显示游戏中心成就通知

是否有内置的方式向用户显示他们已获得游戏中心成就的通知?与通过身份验证时出现的通知类似?

当我完成我的成就并且在我的游戏中没有看到通知时,我感到很惊讶.

谢谢!

iphone objective-c ios

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

在void指针指向的内存中创建一个对象

如果我对一些空闲内存有空*并且我知道至少有sizeof(T)可用,有没有办法在内存中的那个位置创建一个T类型的对象?

我只是要在堆栈上创建一个T对象并将其存储起来,但似乎必须有更优雅的方法来实现它?

c++ pointers memory-management sizeof memcpy

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

限制在iOS 5中同时发生的NSURLConnection请求数量?

仅在iOS 5中,我正在处理的应用程序似乎在异步发送大量请求时丢弃请求.大意义仍然相当小 - 现在用30测试

每个请求都使用它自己的NSURLConnection,并且预计会相对快速地返回(即300 ms - 2s).我们还保持一个连接长时间打开.

似乎每个第5个连接都无法离开设备.它当然永远不会到达服务器,使用Charles的网络调试甚至不会显示请求.

我想知道是否有人知道同时打开的NSURLConnection对象和活动请求数量的限制?

值得注意的是,我们在iOS 4中没有看到这个问题.似乎如果我们终止了我们的长期连接,那么我们就不会再丢弃每个第5个请求了.

cocoa http ios

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

Firefox在视野之外杀死Java小程序

使用display:none隐藏Java applet会导致firefox杀死applet,直到它再次可见.如果你将applet放在视图之外,它似乎也会杀死applet.位置:绝对; 左:-9999; 使用可见性:隐藏; 将隐藏applet而不会将其删除,但是applet仍占用布局中的空间,这对我的应用程序不起作用.有没有人知道一个解决方法,以防止Firefox通过显示或负位置偏移隐藏杀死Java小程序?

用法是一个java上传小程序,我想在上传过程中隐藏它而不会中断上传.

css java firefox plugins applet

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

Qt ISO C++禁止声明没有类型 - 包含头文件?

我正在接受一个Qt应用程序中没有类型错误的禁止声明.问题是我已经包含了声明该类的头文件.据我所知,它应该被定义为一种类型.我也尝试了前向声明,但是我想在这个文件中使用类的方法,所以我需要整个头文件.码:

Shapes.h

#ifndef SHAPES_H
#define SHAPES_H

#include "Colors.h"
#include <QPoint>
#include "glwidget.h"

//class GLWidget;  

class Shape
{
    public:

        virtual void draw();
};

class Rectangle : public Shape
{
    public:
        Rectangle(GLWidget *w, QPoint tl, QPoint br);

        virtual void draw(){
              // top horizontal
            for(int i = topLeft.x(); i < btmRight.x(); i++){
                 glWidget->setPixel(i,topLeft.y(), color);
             }
        }

    private:
        QPoint topLeft,btmRight;
        GLWidget *glWidget;        /****  This is the Error line  ****/
        RGBColor color;
};

#endif // SHAPES_H
Run Code Online (Sandbox Code Playgroud)

glwidget.h:

#ifndef AGLWIDGET_H
#define AGLWIDGET_H

#include <QGLWidget>

#include "Colors.h" …
Run Code Online (Sandbox Code Playgroud)

c++ qt

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

在2d数组中寻找最大值的快速算法

我有一个大小为N x N的二维数组(实际上是一个图像).我需要找到数组中M个最大值的索引(M << N×N).线性化指数或2D坐标都很好.数组必须保持完整(因为它是一个图像).我可以为临时制作副本,但对数组进行排序会使索引陷入困境.

我对完整的数组传递很好(即O(N ^ 2)很好).任何人都有一个很好的算法,尽可能有效地做到这一点?

c c++ arrays algorithm

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