问题列表 - 第46504页

在init中引发异常时如何防止泄漏?

这是情况.假设我有一个名为MYFoo的课程.这是初始化程序:

-init
{
  self = [super init];
  if (self)
  {
    // during initialization, something goes wrong and an exception is raised
    [NSException raise ...];
  }
  return self;
}
Run Code Online (Sandbox Code Playgroud)

现在我想在其他地方使用MYFoo对象,所以我使用了一个常见的模式:

MYFoo *foo = [[[MYFoo alloc] init] autorelease];
Run Code Online (Sandbox Code Playgroud)

但是会发生什么,即使第二部分有一个try/catch,一个MYFoo对象将被分配,异常将被抛出,自动释放错过,未初始化的MYFoo对象将泄漏.

这里应该发生什么来防止这种泄漏?

memory-leaks memory-management objective-c

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

如何使用C#获取错误消息

因为vsinstr -coverage hello.exe,我可以使用C#代码如下.

Process p = new Process(); 
StringBuilder sb = new StringBuilder("/COVERAGE "); 
sb.Append("hello.exe"); 
p.StartInfo.FileName = "vsinstr.exe"; 
p.StartInfo.Arguments = sb.ToString(); 
p.Start(); 
p.WaitForExit();
Run Code Online (Sandbox Code Playgroud)

当出现错误时,我收到错误消息:Error VSP1018: VSInstr does not support processing binaries that are already instrumented..

如何使用C#获取此错误消息?

解决了

我可以从答案中获取错误消息.

using System;
using System.Text;
using System.Diagnostics;

// You must add a reference to Microsoft.VisualStudio.Coverage.Monitor.dll

namespace LvFpga
{
    class Cov2xml
    {
        static void Main(string[] args)
        {
            Process p = new Process();
            p.StartInfo.RedirectStandardOutput = true;
            p.StartInfo.RedirectStandardError = true;         
            p.StartInfo.UseShellExecute = …
Run Code Online (Sandbox Code Playgroud)

c# process

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

在日期字段中自动插入斜杠"/"的最佳方法是什么

我正在尝试添加输入日期字段的功能,以便当用户输入数字时,斜杠"/"会自动添加.

所以假设我有以下html:

<input type="text" id="fooDate" />
Run Code Online (Sandbox Code Playgroud)

假设我有以下javascript:

var dateField = document.getElementById("fooDate");
dateField.onkeyup = bar;
Run Code Online (Sandbox Code Playgroud)

应该bar是什么?

到目前为止,最好的谷歌搜索结果是:

function bar(evt)
{
    var v = this.value;
    if (v.match(/^\d{2}$/) !== null) {
        this.value = v + '/';
    } else if (v.match(/^\d{2}\/\d{2}$/) !== null) {
        this.value = v + '/';
    }

}
Run Code Online (Sandbox Code Playgroud)

谢谢!

另外 - 我知道在你打字的时候输入斜线.滚动它:p

html javascript

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

在Java对象中替换自己的实例

就我而言,实现者应该能够“更新”一个对象。

//creating an instance (follows the active record pattern)
    SameClass myObject = SameClass.find(123,params); 

//myObject gets replaced by the output of the web api inside, but it feels like an update for the implementator
    myObject.update("ask the web api to paint it black"); 
Run Code Online (Sandbox Code Playgroud)

但是,在类内部,我还没有弄清楚如何立即替换所有属性。这种方法行不通,但是也许还有其他机会可以解决它:

    public void update(String newParams) {
//Can't replace "this" (that call returns an instance of "SameClass")
       this = ConnectionFramework.getForObject(SameClass.class,"some url",newParams); 
    }
Run Code Online (Sandbox Code Playgroud)

实际上,“ ConnectionFramework”是适用于Android的Spring RestTemplate。未简化的版本是:

    public void update(HashMap<String,String> params) {
SameClassResponse response = restTemplate.getForObject(ENDPOINT+"/{id}.json",SameClassResponse.class, params);
    this = response.getSameClass(); …
Run Code Online (Sandbox Code Playgroud)

java instance-variables instance

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

如何调试rails 3 gem?

我已经基于本教程创建了一个gem /引擎:

http://www.themodestrubyist.com/2010/03/05/rails-3-plugins---part-2---writing-an-engine/

但是,在尝试在新创建的应用程序中使用gem时出现错误.我试图访问应用程序时得到"路由错误 - 未定义的方法`sub'为nil:NilClass".

我在日志文件中唯一能看到的是同样的错误.没有堆栈跟踪/调试跟踪,因此很难确定错误的来源.理想情况下,我希望看到"来自gem的堆栈跟踪",但看起来rails不会调试源自应用程序外部的错误?

我正在使用rvm,ruby 1.9.2,rails 3.0.1.

这是来自gem的我的config/routes.rb文件,虽然我不认为这是一个路由错误,因为调试消息建议..

Rails.application.routes.draw do
    resources :pictures, :controller => 'morph/pictures'
end
Run Code Online (Sandbox Code Playgroud)

有什么建议?

debugging gem ruby-on-rails rails-engines ruby-on-rails-3

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

改变静态变量的值是不好的做法吗?

我有一个静态字符串变量,我需要根据HTTP协议进行更改.

更改静态字符串变量>是不好的做法

static string QuoteWebServiceUrl = CommonFunctions.ReadAppSetting("QuoteWebServiceUrl");

if(url == "https")
{
  QuoteWebServiceUrl = CommonFunctions.ReadAppSetting("QuoteWebServiceUrlSecure");
}
else
{
  QuoteWebServiceUrl = CommonFunctions.ReadAppSetting("QuoteWebServiceUrl");
}
Run Code Online (Sandbox Code Playgroud)

谢谢

c# static simple-form

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

如何在C++中获取const string的值

我有一个函数,它将const字符串和值作为参数.我试图获取此字符串的值,以便我可以在函数中操作它.所以我想将值存储到字符串returnVal中,但这不起作用:

string returnVal = *value

c++

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

如何序列化List <T>?

我有A班.B班和C班是A班的一部分.

Class A 
{

//Few Properties of Class A

List<typeof(B)> list1 = new List<typeof(B)>()

List<typeof(C)> list2 = new List<typeof(C)>()

Nsystem NotSystem { get; set; } // Enum Property Type

}

public enum Nsystem {
    A = 0,
    B = 1,
    C = 2
}
Run Code Online (Sandbox Code Playgroud)

我想序列化A类,并希望用它生成XML; 我还想序列化list1和list2以及枚举...

序列化这个XML有什么好方法,因为我需要将Object转换为XML和XML转换为Object的功能......

有什么好的选择呢?谢谢

c# xml serialization list

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

重复定义:'identifiedType'

我有一个Web应用程序,我使用的是Spring 3.0和oracle的XMLTYPE相关jar的com.oracle.xdb,后者依赖于com.oracle.xml.xmlparserv2,我相信你们大多数人都知道这些罐子是你得到的异常.与弹簧3.0一起使用如下,

引起:oracle.xml.parser.schema.XSDException:重复定义:'identifiedType'

有一些建议使用像xerces这样的不同解析器,但在我们的例子中,因为我们使用xdb依赖项,看起来我们无法将其更改为使用除com.oracle.xml.xmlparserv2之外的另一个解析器,它在春天工作正常2.5.6是否有关于何时由spring/oracle修复的信息?

xml oracle spring types jar

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

从NSSet检索NSManagedObject

我有两个实体,它们之间有一对多的关系.保存"many"的实体具有预期的NSSet属性.我不确定如何访问NSSet中的特定元素.NSSet包含具有多个属性的对象,其中一个属性是currentWeek.我想访问我的NSSet中具有特定currentWeek的对象.

我知道我可以做一个FetchRequest来找到它,但我认为使用NSSet有一种更简单的方法.

nsset nsmanagedobject ios

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