问题列表 - 第47744页

typedef struct和enum,为什么?

可能重复:
struct,typedef struct的目的,在C++
typedef struct vs struct definitions中

在我维护的代码中,我经常看到以下内容:

typedef enum { blah, blah } Foo;
typedef struct { blah blah } Bar;
Run Code Online (Sandbox Code Playgroud)

代替:

enum Foo { blah, blah };
struct Bar { blah blah };
Run Code Online (Sandbox Code Playgroud)

我总是使用后者,这是我第一次看到前者.所以问题是为什么一个人使用一种风格而不是另一种风格.有什么好处?它们在功能上是否相同?我相信他们但并非100%肯定.

c++ enums struct

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

dataType json的jQuery $ .ajax请求不会从PHP脚本中检索数据

我一直在寻找解决方案,但我找不到任何有效的方法.我试图从数据库中获取一堆数据,然后通过表单中的AJAX自动完成输入字段.为此,我决定使用json,因为为什么不呢,对吧?另外,我一直在考虑发回一个分隔的字符串,然后将它标记出来,在后视中它会更容易并且让我免于头疼......因为我已经决定使用json,我想我应该坚持下去,找出问题所在!发生的事情是,当执行get_member_function()时,警报对话框中会弹出一个错误,并显示"[object Object]".我也尝试过使用GET请求,并将contentType设置为"application/json; 字符集= UTF-8".唉,没有骰子.任何人都可以建议我做错了什么?小心,彼得.

我的javascript/jQuery函数如下:

function get_member_info()
   {

   var url = "contents/php_scripts/admin_scripts.php"; 
   var id = $( "select[ name = member ] option:selected" ).val();

   $.ajax(
   {

      type: "POST",
      dataType: "json",
      url: url,
      data: { get_member: id },
      success: function( response ) 
      { 

          $( "input[ name = type ]:eq( " + response.type + " )" ).attr( "checked", "checked" );
          $( "input[ name = name ]" ).val( response.name );
          $( "input[ name = fname ]" ).val( response.fname );
          $( "input[ name = lname …
Run Code Online (Sandbox Code Playgroud)

php ajax jquery json

16
推荐指数
3
解决办法
23万
查看次数

在OpenGL中浏览超球面

也许这适合math.stackexchange.com,但由于我在OpenGL中编程,我会在这里问一下.

我有一个宇宙飞船游戏的想法,世界被限制在4-D超球面(也称为3球体)的表面.因此,从内部看,它看起来像一个三维世界,但通过向各个方向导航,我永远不会离开3球的有限体积.

为了将3-shpere表示为"平坦的"3-D空间,我使用立体投影,它作为GLSL着色器实现起来非常简单,只需要将输入矢量除以1减去其w坐标.

为了表示对象的顶点,我使用归一化的4d向量,使得x 2 + y 2 + z 2 + w 2 = 1,从而将它们保持在3球内.

要解决的第一个问题是轮换.但我很快就发现普通的三维旋转矩阵足以在3d投影中围绕观察者旋转世界,因为它不会弄乱w坐标(就像围绕z轴旋转一个球体也会旋转它立体投影).

然后我发现沿着w轴旋转相当于3d投影内的平移(只是不可交换,就像"平面"空间上的普通3d平移),然后我可以通过使用简单的绕轴旋转矩阵沿着轴平移(x',y')=(x*cos a - y*sin a,x*sin a + y*cos a),但是w与另一个轴一起变化.

这是我到目前为止所得到的,根据观察者从投影所面对的位置,我无法弄清楚如何向前导航.我可以应用逆变换来导出观察者在超球面坐标中面对的标准化4-D向量(称为F),但我不知道如何通过使用4x4矩阵在该方向上导航(OpenGL中的最佳值) ).我可以考虑一个hackish解决方案:对于每个顶点V,做V'= normalize(d*F + V),其中d是向前移动的距离(在一些奇怪的单位我不能精确).这种方式仅适用于较小的d值,d与角度变化之间没有直接关系.

因此问题是:如何向前移动(使用4x4矩阵变换)在4-D超球面?

opengl

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

可以在Flot中水平显示条形图吗?

道歉,但我是Flot的新手.

我想在水平条形图中显示我的数据而不是Flot似乎默认的垂直条形图.

是否可以在Flot中执行此操作,如果是,我该如何操作?

jquery charts flot bar-chart

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

如何在git中快进其他跟踪分支?

我们正在使用我们所有人都使用的单个远程存储库的模型.我们分支新功能并重新集成到主干分支.我们的工作流程是,当其他功能集成到主干中时,我们应该从主干集成到我们的工作分支.

因此,我们做的事情并不少见:

(branch) $ git commit -a -m"blah blah blah"
(branch) $ git fetch  # origin/trunk is updated
(branch) $ git checkout trunk
(trunk) $ git pull  # trunk is fast-forwarded to current version of origin/trunk.
(trunk) $ git checkout branch
(branch) $ git merge trunk
(branch) $ git push
Run Code Online (Sandbox Code Playgroud)

我不喜欢"git checkout trunk/git pull/git checkout branch"循环.它通常与Visual Studio合并,抱怨我的所有文件和项目都在磁盘上发生了变化,并且应该重新加载它们.两个结帐.而拉.合并.合并是不可避免的,但由于git如何工作,它应该能够在主干上进行快进,而不需要检查它.

但我不知道这个命令,而我的google-foo在这方面让我失望了.谁知道怎么样?

git

28
推荐指数
3
解决办法
8162
查看次数

Windows上的KiokuDB

我想知道是否有人能够在Windows上成功使用KiokuDB.有了ActivePerl 5.12.2,我没有在ppm存储库中预先编译它.使用cpan,它在测试File :: NFSLock时停止了.不过,我能够用notest安装它.

下面的简单测试似乎有记录:

package Person;
use Moose;

has ['name', 'age'] => (is => 'ro');

package main;

use Data::Dump;
use KiokuDB;

my $dir = KiokuDB->connect("hash");

{
    my $scope   = $dir->new_scope;
    my $obj = Person->new(name => 'Joe', age => 34);

    my $data_id = $dir->store($obj);

    warn $data_id;   # 6702A424-6BF6-1014-B0F5-EC4CE5BB15D7

    my $got = $dir->lookup($data_id);
    dd $got;         # bless({ age => 34, name => "Joe" }, "Person")
}
Run Code Online (Sandbox Code Playgroud)

有人用它来做Windows上更大的东西,比如DBI后端吗?你认为它是否足够稳定/可用于一些较小的项目?

请至少提供一些使用方法的详细信息,以便我有一个与我的计划相符的想法.

windows perl persistence kiokudb

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

什么是复杂度为O(n ^ 5)的算法示例?

任何人都可以提供一个算法的例子,其运行时间复杂度最小为O(n ^ 5)?

algorithm time-complexity

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

解析字符串中的double

我正在解析我正在处理的iphone应用程序中的字符串中的double.此双精度值是小数gps位置(纬度或经度)的一部分.使用[string doubleValue]或数字格式化器总是会返回nil.

    if([elementName isEqual:@"long"]) {
    NSLog(@"\t got lon %@",[currentString doubleValue]);
}
Run Code Online (Sandbox Code Playgroud)

这总是导致记录为null.

iphone objective-c ios

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

仅在有效时禁用提交

即时通讯使用jquery与asp.net mvc.我正在做这样的事情,以便在单击时禁用提交按钮.

但如果有验证错误,我不希望它被禁用.

 $('form').submit(function () {
        if ($('form').valid()) {
            $('input[type=submit]', this).attr('disabled', 'disabled');
        }
    });
Run Code Online (Sandbox Code Playgroud)

这使它被禁用,但即使存在验证错误.怎么了?

asp.net-mvc jquery jquery-validate

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

Visual Studio 2010中的boost :: thread编译错误

我在很长一段时间内第一次尝试使用boost,当我包含boost/thread.hpp标头时,我在boost本身内部出现了编译错误:

    c:\myproj\boost_1_46_0\boost\thread\win32\thread_heap_alloc.hpp(97): error C2061: syntax error : identifier 'heap_memory
    c:\myproj\boost_1_46_0\boost\thread\detail\thread.hpp(134) : see reference to function template instantiation 'T *boost::detail::heap_new<boost::detail::thread_data<F>,void(__cdecl *)(void)>(A1 &&)' being compiled
    with
    [
        T=boost::detail::thread_data<void (__cdecl *)(void)>,
        F=void (__cdecl *)(void),
        A1=void (__cdecl *)(void)
    ]`
Run Code Online (Sandbox Code Playgroud)

这只是通过包含标题,它似乎与我的代码没有任何关系,但我看不出该怎么办,有人可以帮忙吗?

c++ multithreading boost visual-studio-2010

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