问题列表 - 第12283页

想要开始iPhone开发

我完成了.NET和Web开发.并希望开始为iPhone编写应用程序.

我需要从哪里开始 - 任何SDK或我需要得到的东西 - 需要学习什么语言 - 我使用Windows,我将不得不切换到Mac进行iPhone开发 - 是否有任何iPhone设备模拟器或我将有也买iPhone

iphone

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

成员函数指针调用复制构造函数?

我正在尝试在我的代码中创建成员函数的查找表,但它似乎试图调用我的复制构造函数,我通过扩展"uncopyable"类来阻止它.我所拥有的是以下内容.

enum {FUN1_IDX, FUN2_IDX, ..., NUM_FUNS };

class Foo {
  fun1(Bar b){ ... }
  fun2(Bar b){ ... }
  ...
  void (Foo::*lookup_table[NUM_FUNS])(Bar b);
  Foo(){ 
    lookup_table[FUN1_IDX] = &Foo::fun1;
    lookup_table[FUN2_IDX] = &Foo::fun2;
  }

  void doLookup(int fun_num, Bar b) {
    (this->*lookup_table[fun_num])(b);
  }
};
Run Code Online (Sandbox Code Playgroud)

错误是'(this - > ...'行试图调用复制构造函数,这是不可见的.为什么要尝试这样做,我需要改变什么,所以它不会?

c++ function-pointers lookup-tables

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

C#日期格式化

这是我遇到过的一个问题很多次,我确信这是一个我缺少的优雅解决方案.

我在c#中有一些DateTime变量,我从各种SQL表/网站/ Web服务发送,通常以字符串形式发送.问题是这些来源中的一些被设置为英语(美国),一些被设置为英语(英国).我无法控制其中的一些,因为我非常希望将它们全部设置为一种文化或另一种文化.

到目前为止,我一直在使用CultureInfo对象转换它们,以正确格式化,如:

CultureInfo ci = new CultureInfo("en-GB");
Convert.ToDateTime(inputDateTimeString, ci);
Run Code Online (Sandbox Code Playgroud)

然而,最近我才知道转换不知道原始DateTime所处的文化(正如我所说,可能是美国或英国),因为它只是一个字符串.

对于日期字符串,例如"06/15/2009",这很好,因为转换识别'15'不能是月份.但是,日期字符串"06/07/2009"将始终有效,但根据原件是美国还是英国,它可能指的是不同的日期和月份.

是否有一种更好的可接受的方法来处理DateTime,从而减少这些含糊之处?谢谢.

编辑:是的,所以似乎没有可靠的方法来始终转换为正确的格式,因为我的信息是有限的.

这些DateTime字符串的一个来源是.dll我无法控制.但是,我可以控制此.dll用于访问存储信息的数据库的SQL登录.如果我要将此登录的语言设置更改为英式英语(目前是美国英语),它会以该格式检索DateTime,还是会无效?我必须检查当前它没有搞砸任何其他东西,但它可能有效吗?

c# datetime

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

返回类型的推断通配符泛型

Java通常可以根据参数推断泛型(甚至在返回类型上,与例如C#相反).

例证:我有一个Pair<T1, T2>只存储一对值的泛型类,可以按以下方式使用:

Pair<String, String> pair = Pair.of("Hello", "World");
Run Code Online (Sandbox Code Playgroud)

该方法of看起来像这样:

public static <T1, T2> Pair<T1, T2> of(T1 first, T2 second) {
    return new Pair<T1, T2>(first, second);
}
Run Code Online (Sandbox Code Playgroud)

非常好.但是,这不再适用于以下需要使用通配符的用例:

Pair<Class<?>, String> pair = Pair.of((Class<?>) List.class, "hello");
Run Code Online (Sandbox Code Playgroud)

(注意显式强制转换以List.class生成正确的类型.)

代码失败,出现以下错误(由Eclipse提供):

类型不匹配:无法转换TestClass.Pair<Class<capture#1-of ?>,String>TestClass.Pair<Class<?>,String>

但是,显式调用构造函数仍然按预期工作:

Pair<Class<?>, String> pair =
    new Pair<Class<?>, String>((Class<?>) List.class, "hello");
Run Code Online (Sandbox Code Playgroud)

有人可以解释这种行为吗?它是按设计的吗?它需要吗?我做错了什么,或者我偶然发现编译器中的设计/错误存在缺陷?

狂野猜测:"捕获#1-of?"似乎暗示通配符由动态编译器填充,使类型为a Class<List>,从而使转换失败(从)Pair<Class<?>, String>Pair<Class<List>, String>.这是正确的吗?有办法解决这个问题吗?


为了完整起见,这里是Pair该类的简化版本:

public final class Pair<T1, T2> {
    public …
Run Code Online (Sandbox Code Playgroud)

java generics bounded-wildcard

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

使用构造函数模拟对象 - Rhino Mocks

如何使用Rhino Mocks使用构造函数模拟对象?

例如,如何嘲笑这个对象......

public class Foo : IFoo
{
    private IBar bar;
    public Foo (IBar bar)
    {
        this.bar = bar
    }

    public DoSomeThingAwesome()
    {
       //awesomeness happens here
    }

}
Run Code Online (Sandbox Code Playgroud)

c# rhino-mocks

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

F#中的打印顺序

我对F#很新,所以请原谅这个全新的问题:

我有一个序列存储在一个名为price的变量中.我想将此序列的内容输出到交互式窗口.执行此操作的最简单命令是什么?

这是我的序列:

> prices;;
val it : seq<System.DateTime * float> = seq []
Run Code Online (Sandbox Code Playgroud)

我试过printf'ing它,但这给了我错误:

> printf("%A", prices);;

  printf("%A", prices);;
  -------^^^^^^^^^^^^

stdin(82,8): error FS0001: The type ''b * 'c' is not compatible with the type 'Printf.TextWriterFormat<'a>'
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激.

f#

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

LINQ查询中是否可以处理异常?

例:

myEnumerable.Select(a => ThisMethodMayThrowExceptions(a));
Run Code Online (Sandbox Code Playgroud)

即使抛出异常,如何使其工作?就像带有默认值的try catch块一样,会抛出异常......

.net c# linq exception-handling exception

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

我可以删除任何隐式导入的Java库吗?

我可以删除任何隐式导入的Java库吗?它可能看起来没用.但我认为这可能会减少一些执行时间!

java import

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

我应该在这里使用SQL游标吗?

我最近读过关于应该如何避免游标的内容.好吧,我想知道我对它们的使用是否合适.

我正在创建一个可在线工作的脚本引擎(嵌入在页面,服务器端)此脚本引擎将由本产品的"高级"最终用户使用.然而,该产品与数据库非常相似,并且脚本语言类似于C语言,但简化为类似于PHP的地方.对于数据库,我基本上需要这样的语法,因为它是语言中最一致的语法,没有最终用户必须手写SQL代码(如果我们要让他们这样做,为什么他们不能跳过脚本引擎作为它的生活更简单).语法是这样的:

declare DataSet $data("tablename","OtherID="+$oid);
//Dataset(string tablename,string where_clause_addon)
$data["field1"]="the data of field... ";
$data.Next();  
$data["field1"]="The data of the next row";
$data[10]["field1"]="The data of the 10th row";
Run Code Online (Sandbox Code Playgroud)

我通过为每个DataSet创建一个全局游标(我只在应用程序中使用1个连接)然后让全局游标跟踪当前行位置(它也是一个SCROLL和UPDATE游标)来内部控制它.这使我的生活变得更加简单,否则我将被迫编写自己的SQL控件来对抗.Net的糟糕DataReader.

游标的使用是否正常?请注意,具有这些脚本的页面将无法在全球范围内访问,仅适用于客户端(因此可能只有3-10个用户同时访问).

有没有人看到更好的方法来跟踪当前的变量位置?(因为这些能够解决未知模式的表)

另外,使用这样的游标我会遇到并发问题吗?(我的文档说游标是连接的全局,并且每个页面请求在现场建立新连接,因此用户不共享连接)

sql sql-server concurrency performance cursor

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

如何使用Python 2.6在Windows上安装PyGTK/PyGobject?

我有一个应用程序,它依赖于我为Linux工作而构建的PyGTK,PyGobject和PyCairo.我想将它移植到Windows,但是当我执行时,import gobject我得到这个:

Traceback (most recent call last):
    import gobject
  File "C:\Python26\lib\site-packages\gtk-2.0\gobject\__init__.py", line 30, in <module>
    from gobject.constants import *
  File "C:\Python26\lib\site-packages\gtk-2.0\gobject\constants.py", line 22, in <module>
    from _gobject import type_from_name
ImportError: DLL load failed: The specified procedure could not be found.
Run Code Online (Sandbox Code Playgroud)

这似乎是由使用MinGW构建到Microsoft Visual Studio的转换引起的,如Python Bug 3308(closed: wontfix)所示.

有没有办法以一种可以在Windows上使用Python 2.6的方式安装PyGTK/PyGObject,而无需从源代码重新编译其中一个?

python pygtk mingw pygobject

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