小编Ale*_*pin的帖子

改善财产监控代码?

我在C#游戏中制作了一个实用程序调试类,我正在努力监视和查看属性值.像这样:

public static class Monitor
{
  private static List<object> monitoredObjects;

  public static void Initialize()
  {
   monitoredObjects = new List<object>();

  }

  public static void Watch(object o)
  {
   monitoredObjects.Add(o);
  }

  public static void Unwatch(object o)
  {
   monitoredObjects.Remove(o);
  }

  public static void Draw(RenderWindow app)
  {
                    //Not actual code, I actually draw this in game
   foreach (object o in monitoredObjects)
    Console.WriteLine(o.ToString());
  }
 }

 public class Property
 {
  private object obj;
  private PropertyInfo propertyInfo;

  public override string ToString()
  {
   return propertyInfo.Name + ": " + …
Run Code Online (Sandbox Code Playgroud)

c# reflection closures properties

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

使用泛型的字典

我目前正在为我的游戏编写资源管理器.这基本上是一个类,它将处理不同类型的所有其他对象,并且每个对象都通过名称(System.String)引用.现在这是我当前的实现,但由于我使用对象字典,我仍然需要转换每个对象.在这种情况下有没有办法使用泛型?我对这些不是很强,我试着读它们,结果让我更加困惑.

public static class ResourceManager
{
    public static Dictionary<string, object> Resources { get; private set; }

    public static void LoadResources()
    {
        Resources = new Dictionary<string, object>();

        //Sample resource loading code
        Resources.Add("number", 3);
        Resources.Add("string", "bleh");

        Console.Log("Loaded " + Resources.Count + " resources.");
    }
}
Run Code Online (Sandbox Code Playgroud)

c# generics dictionary

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

1D多峰检测?

我目前正在尝试在AS3中实现基本语音识别.我需要这完全是客户端,因此我无法访问功能强大的服务器端语音识别工具.我的想法是检测一个单词中的音节,并用它来确定所说的单词.我知道这会限制识别的能力,但我只需要识别几个关键词,我可以确保它们都有不同数量的音节.

我现在能够为一个口语单词生成一维语音级别,我可以清楚地看到,如果我以某种方式绘制它,在大多数情况下,音节有明显的峰值.但是,我完全不知道如何找到那些高峰.我只是真的需要计数,但我想这就是找到它们.起初我想抓住一些最大值并将它们与平均值进行比较,但我忘记了那个比其他值更大的峰值,因此,我所有的"峰值"都位于一个实际峰值上.

我偶然发现了一些看起来太短暂无法实现的Matlab代码,但由于我无法将其转换为我所知道的任何语言,因此我无法做到这一点.我试过AS3和C#.所以我想知道你们是否可以在正确的道路上开始我或者有任何用于峰值检测的伪代码?

math matlab speech-recognition graph actionscript-3

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

如何在objective-C(iOS sdk)中使用继承

我刚开始学习iOS编程,我的继承问题.有2个文件.

第一个文件

#import <UIKit/UIKit.h>
@interface ViewController : UIViewController {
    int x;
}
@end
Run Code Online (Sandbox Code Playgroud)

执行:

#import "ViewController.h"
#import "NewClass.h"
@implementation ViewController
#pragma mark - View lifecycle
- (void)viewDidLoad
{
    [super viewDidLoad];
    x = 999;
    NewClass *myClass = [[[NewClass alloc] init] autorelease];
}
@end
Run Code Online (Sandbox Code Playgroud)

第二档

标题:

#import "ViewController.h"

@interface NewClass : ViewController 
@end
Run Code Online (Sandbox Code Playgroud)

执行:

#import "NewClass.h"
@implementation NewClass

-(id)init { 
    self = [super init];                                       
    if (self != nil) {                                            
        NSLog(@"%i",x);
    }
    return self;                           
}
@end
Run Code Online (Sandbox Code Playgroud)

在ViewController中我将x设置为999,而在NewClass中我想得到它,但是当我调用NSLog(@"%i",x);它时,它会给我0.

我在哪里弄错了?

iphone model-view-controller objective-c ios

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

为什么toString()和this.toString()会在Chrome的控制台中产生不同的结果?

现在这根本没有实际意义,但我很好奇这个我偶然发现的小怪癖.

基本上,在Chrome的开发者控制台中,这个

toString()
Run Code Online (Sandbox Code Playgroud)

返回[object Object],而这

this.toString()
Run Code Online (Sandbox Code Playgroud)

回报[object DOMWindow].

据我所知,这只发生在控制台上,就像在这个jsFiddle上看到的那样.## javascript上有人发现这个链接解释了函数的来源.但是,它并未解释在控制台内部或外部使用时的行为差异.

那么,为什么toString()this.toString()生产在Chrome的控制台不同的结果?

javascript google-chrome

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

Webpack源映射指向缩小的bundle

我正在为现有项目设置一个Webpack构建过程,并且已经遇到了源映射的一些问题.

我在用devtool: 'eval-source-map',.如果浏览器中发生错误,则堆栈跟踪中的每个文件/行号都指向压缩到Webpack包中的单行的文件.

例如,堆栈跟踪的第一行可能如下所示:

未捕获的错误:foo

在child.initialize(eval at(http://127.0.0.1:8000/js/dist/index.js:1270:1),:45:10)

单击文件名/行号会将包中的链接到Webpack所包含的"包含"错误发生的文件所在的行.看起来像这样:

/* 223 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
// Below is the line it points to, and it goes on to have the entire file on the same line
eval("/* WEBPACK VAR INJECTION */(function(Backbone, $, _) { ... 
Run Code Online (Sandbox Code Playgroud)

但是整个文件内容都在这一行上,所以这完全没用.

即使我将我的Webpack配置修改为这样,也会发生这种情况:

var path = require('path'),
    webpack = require('webpack');

module.exports = {
    entry: {
        'indexhead': './static/js/main.js',
        'accounthead': './static/js/accountManager.js'
    },
    output: {
        path: path.join(__dirname, 'static/js/dist'),
        filename: '[name].js'
    },
    devtool: …
Run Code Online (Sandbox Code Playgroud)

javascript source-maps webpack

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

Date.js:Date.now()表现得很奇怪

我正在使用date.js.

这条线time_container.innerHTML = Date.now().toString('T');很好,简单,现在在Firebug控制台中抛出错误:radix must be an integer at least 2 and no greater than 36.它肯定早一点工作.

注意:date.js toString()函数使用特殊格式说明符.

var show_date = {
    setup: function() {
        setInterval(show_date.update, 5000);
    },
    update: function() {
        var date_container = app.get('js_date');
        var time_container = app.get('js_time');

        if (date_container) {
            date_container.innerHTML = Date.today().toString('dS of MMMM yyyy');
        }
        if (time_container) {
            //time_container.innerHTML = Date.now().toString('T');
            var d1 = new Date();
            time_container.innerHTML = d1.toString('T');
        }
    }
}
app.onload(show_date.setup);
Run Code Online (Sandbox Code Playgroud)

app.get()只是一个捷径document.getElementById().app.onload() …

javascript date datejs

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

Box2D机身在碰撞时不会旋转

我一直试图进入Box2DWeb,这是Box2D的AS端口的JS端口.只是尝试进行简单的设置,其中有一个静态斜坡和一个动态框.这是我的代码:

var b2World =  Box2D.Dynamics.b2World;
var b2DebugDraw = Box2D.Dynamics.b2DebugDraw;
var b2Vec2 = Box2D.Common.Math.b2Vec2;
var b2BodyDef = Box2D.Dynamics.b2BodyDef;
var b2Body = Box2D.Dynamics.b2Body;
var b2FixtureDef = Box2D.Dynamics.b2FixtureDef;
var b2PolygonShape = Box2D.Collision.Shapes.b2PolygonShape;
var b2CircleShape = Box2D.Collision.Shapes.b2CircleShape;

var width = 8;
var height = 4;

var world = new b2World(new b2Vec2(0, 10), true);

var debugDraw = new b2DebugDraw();
debugDraw.SetSprite(document.getElementById("canvas").getContext("2d"));
debugDraw.SetDrawScale(100); //Arena is 8 meters by 4 meters
debugDraw.SetFillAlpha(0.5);
debugDraw.SetLineThickness(1);
debugDraw.SetFlags(b2DebugDraw.e_shapeBit);
world.SetDebugDraw(debugDraw);

var bodyDef = new b2BodyDef();
bodyDef.type = b2Body.b2_staticBody;
bodyDef.position.Set(3.5, 3)
var …
Run Code Online (Sandbox Code Playgroud)

javascript physics canvas box2d

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

jquery ajax获取返回值

我想获得html页面的"打印价值".

我试过下面的查询,但showGetResult()只返回'null value'

但我的apache服务器日志打印我尝试此代码时访问index.php.

(index.php只是打印helloworld)

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"><\script>
<script type="text/javascript">
function showGetResult( name )
{
     var result = null;
     jQuery.ajax({
        url: 'http://localhost/index.php',
        type: 'get',
        dataType: 'text/html',
        success:function(data)
        {
            alert(data);
            result = data;
        } 
     });
     return result;
}

document.write(showGetResult('test'));
</script>
Run Code Online (Sandbox Code Playgroud)

javascript ajax jquery

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

在解析之前使用 lxml 注册命名空间

我使用 lxml 从具有命名空间的外部服务解析 XML,但未将它们注册到xmlns. 我正在尝试手动注册它register_namespace,但这似乎不起作用。

from lxml import etree

xml = """
    <Foo xsi:type="xsd:string">bar</Foo>
"""

etree.register_namespace('xsi', 'http://www.w3.org/2001/XMLSchema-instance')
el = etree.fromstring(xml) # lxml.etree.XMLSyntaxError: Namespace prefix xsi for type on Foo is not defined
Run Code Online (Sandbox Code Playgroud)

我缺少什么?奇怪的是,查看 lxml 源代码来尝试理解我可能做错了什么,似乎xsi命名空间应该已经作为默认命名空间之一存在。

python xml lxml xml-namespaces

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