我有这个代码,它接受来自Core Data的收入对象数组.
- (void)totalIncome:(NSMutableArray *)IncomesArray {
int i;
int total;
for (i = 0; i < [IncomesArray count]; ++i)
{
Income *income = [IncomesArray objectAtIndex:i];
total += (int)[income value];
NSLog(@"%@", total);
}
self.totalIncomes = [[NSNumber alloc] initWithInt:(int)total];
NSLog(@"%.2f", self.totalIncomes);
}
Run Code Online (Sandbox Code Playgroud)
但行NSLog(@"%@",总计); 导致EXEC BAD ACCESS错误.有没有明显的事我做错了.此外,如果我删除日志,则没有添加到totalIncomes中,在我的头文件中声明为NSNumber.谢谢.
在ASP.NET WebForms中,我想将任意数据从服务器传递到客户端,然后再传回.我正在序列化为JSON,并且只是生成在客户端上创建对象的JavaScript.使用ajax将数据发送到服务器没有问题,但有些情况下我还想在回发时将Javascript对象数据发送回服务器.所以我想它需要在一个隐藏的领域.
关于这一点的几个一般性问题.
1)在最小化复杂性和优化空间和效率方面,最好的方法是什么?在研究这个时,我发现了Protocol Buffers,但似乎没有一个好的C#实现.我确实找到了一个,但它已经有几年了,自我描述为马车,所以吓到了我.
2)如果我只传递一个JSON字符串,我怎么能确定包含隐藏字段的值是否安全?有什么理由我可能不想这样做吗?我可以使用Base64编码,但似乎这会增加很多开销.什么被认为是最好的或首选的方法?
对于'这是一个句子'的字符串输入,当位置为6或7时,它必须返回'is'.当position为0时,1,2,3或4结果必须为'this'.
什么是最简单的方法?
我一直在玩PostgreSQL的通知系统,并且在我的生活中无法解释为什么pg_notify(文本,文本)永远不会起作用.这个功能没有过多记录,我找不到很多在野外使用的例子,所以我想没有人会介意我在这里问.
运行以下工作完全符合预期:
LISTEN my_channel;
NOTIFY my_channel, 'my message text';
Run Code Online (Sandbox Code Playgroud)
但是,使用pg_notify()函数会返回一个空值,并且不会发送任何通知.也没有错误.一个例子是:
SELECT pg_notify('my_channel', 'my message text');
Run Code Online (Sandbox Code Playgroud)
我可以使用NOTIFY函数,但我的目标是将通知简化为如下查询:
select pg_notify(get_player_error_channel(username)::TEXT, 'test'::TEXT)
from player;
Run Code Online (Sandbox Code Playgroud)
我认为我必须遗漏一些荒谬的东西,但我没有找到解决这个问题的原因.可以在此处找到讨论NOTIFY的页面:http://www.postgresql.org/docs/9.0/static/sql-notify.html
在它上面,它提到了关于pg_notify()的内容,这让我觉得没有什么大不相同的东西.
pg_notify 要发送通知,您还可以使用函数pg_notify(text,text).该函数将通道名称作为第一个参数,将有效负载作为第二个参数.如果您需要使用非常量通道名称和有效负载,则该功能比NOTIFY命令更容易使用.
一如既往地感谢您的帮助
编辑:数据库版本是:"i6486-pc-linux-gnu上的PostgreSQL 9.0.3,由GCC gcc(GCC)4.2.4编译,32位"
所以例如你有一个类似的类型:
public class EffectOptions
{
public EffectOptions ( params object [ ] options ) {}
public EffectOptions ( IEnumerable<object> options ) {}
public EffectOptions ( string name ) {}
public EffectOptions ( object owner ) {}
public EffectOptions ( int count ) {}
public EffectOptions ( Point point ) {}
}
Run Code Online (Sandbox Code Playgroud)
这里我只使用构造函数给出示例,但如果它们是类型本身的非构造方法,结果将是相同的,对吧?
所以当你这样做时:
EffectOptions options = new EffectOptions (null);
Run Code Online (Sandbox Code Playgroud)
会调用哪个构造函数,为什么?
我可以自己测试一下,但我想了解重载分辨率系统是如何工作的(不确定它是否被称为).
我有一个模型,我覆盖了save方法,以便该save方法可以传递到一些数据并自动填写一个字段保存之前.这是我的模型:
class AccountModel(models.Model):
account = models.ForeignKey(Account)
def save(self, request=None, *args, **kwargs):
if request:
self.account = request.session['account']
super(AccountModel, self).save(*args, **kwargs)
class Meta:
abstract = True
Run Code Online (Sandbox Code Playgroud)
我的想法是为需要与帐户关联的对象设置基本模型,然后我不必在每次出现时处理帐户连接(这很多).
但是:我也想使用get_or_create,它保存新对象而不传递请求.我知道不可以使用get_or_create和做一个try/ except而不是,但我想知道是否有一种方法可以覆盖,get_or_create以及正确的方法是什么.
我查看了代码Manager(我正在考虑重写),该get_or_create函数只调用一个QuerySet.get_or_create函数.也许我可以写它来使用其他管理器功能而不是QuerySet版本的get_or_create?你们都在想什么?
Systems.Collections.Generic.Dictionary类的以下函数在抛出异常后有返回语句,有没有人知道为什么?
public TValue this[TKey key] {
get {
int i = FindEntry(key);
if (i >= 0) return entries[i].value;
ThrowHelper.ThrowKeyNotFoundException();
**return default(TValue);**
}
set {
Insert(key, value, false);
}
}
Run Code Online (Sandbox Code Playgroud) 在java中,说我有以下内容
==fileA.java==
class A
{
public static final int SIZE = 100;
}
Run Code Online (Sandbox Code Playgroud)
然后在另一个文件中我使用此值
==fileB.java==
import A;
class b
{
Object[] temp = new Object[A.SIZE];
}
Run Code Online (Sandbox Code Playgroud)
当这个被编译时会SIZE被替换为值100,所以如果我要在路上替换FileA.jar而不是FileB.jar,对象数组将获得新值或者它是否已被硬编码为100,因为那是它最初建成时的价值?
谢谢,
斯蒂芬妮
c# ×3
java ×2
javascript ×2
.net ×1
asp.net ×1
compilation ×1
core-data ×1
database ×1
dictionary ×1
django ×1
facebook ×1
final ×1
int ×1
ios ×1
maven ×1
nsarray ×1
objective-c ×1
postgresql ×1
python ×1
static ×1
string ×1
subclass ×1
webforms ×1