问题列表 - 第40154页

如何检查值是否为json对象?

我的服务器端代码返回一个值,该值在成功时是一个json对象,在失败时返回一个字符串'false'.现在我该如何检查返回的值是否是json对象?

jquery json object

97
推荐指数
5
解决办法
19万
查看次数

counter_cache实现的问题

我得到'耙子流产!... posts_count标记为只读'错误.

我有两个模型:用户和帖子.

users has_many posts.

posts belongs_to :user, :counter_cache => true
Run Code Online (Sandbox Code Playgroud)

我有一个迁移,它将posts_count列添加到users表,然后计算并记录每个用户的当前帖子数.

self.up
  add_column :users, :posts_count, :integer, :default => 0

  User.reset_column_information
  User.all.each do |u|
    u.update_attribute( :posts_count, u.posts.count)
  end
end
Run Code Online (Sandbox Code Playgroud)

当我运行迁移时,我收到错误.这当然非常明确,如果我从posts模型中删除:counter_cache声明,例如

belongs_to :user
Run Code Online (Sandbox Code Playgroud)

迁移运行正常.显然,这没有意义,因为你无法以这种方式真正实现它.我错过了什么?

ruby-on-rails counter-cache

43
推荐指数
1
解决办法
6836
查看次数

将2维阵列旋转90度

在阵列操作练习期间支持的常见问题是将二维阵列旋转90度.有一些SO帖子可以解答如何在各种编程语言中完成它.我的问题是澄清其中的一个答案,并探索需要什么样的思维过程才能以有机的方式得出答案.

我发现这个问题的解决方案如下:

public static void rotate(int[][] matrix,int n)
{
  for( layer = 0;layer < n/2;++layer){
      int first = layer;
      int last = n -1 - layer;
      for(int i = first;i<last;++i){
        int offset = i - first;
        int top = matrix[first][i];
        matrix[first][i] = matrix[last-offset][first];
        matrix[last-offset][first] = matrix[last][last-offset];
        matrix[last][last-offset] = matrix[i][last];
        matrix[i][last] = top;
       }
    }
}
Run Code Online (Sandbox Code Playgroud)

我有点想知道上面的代码试图做什么,它通过进行四向交换来交换四肢/角落,并对由一些偏移分隔的其他单元格做同样的事情.

单步执行此代码我知道它有效,我没有得到的是上面给出的算法的数学基础."层","第一","最后"和偏移背后的基本原理是什么?

"最后"怎么样n-1-layer?偏差为什么i-first?首先是什么偏移?

如果有人可以解释这个算法的起源并引导我完成思考过程以提出解决方案,那将是很好的.

谢谢

arrays algorithm rotation

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

Typedef函数指针?

我正在学习如何动态加载DLL,但我不明白的是这一行

typedef void (*FunctionFunc)();
Run Code Online (Sandbox Code Playgroud)

我有几个问题.如果有人能够回答他们,我将不胜感激.

  1. 为什么typedef用?
  2. 语法看起来很奇怪; 之后void应该有不是一个函数名还是什么?它看起来像一个匿名函数.
  3. 是否创建了一个函数指针来存储函数的内存地址?

所以我此刻很困惑; 你能为我澄清一下吗?

c c++ pointers typedef

428
推荐指数
5
解决办法
38万
查看次数

Python中是否有一个工具来创建像Powershell这样的文本表?

每当PowerShell显示其对象时,它都会在等宽控制台中以漂亮的方式格式化它们,例如:

> ps

Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
-------  ------    -----      ----- -----   ------     -- -----------
    101       5     1284       3656    32     0.03   3876 alg
    257       7     4856      10228    69     0.67    872 asghost
    101       4     3080       4696    38     0.36   1744 atiptaxx
    179       7     5568       7008    54     0.22    716 BTSTAC~1
...
Run Code Online (Sandbox Code Playgroud)

在Python中是否有类似的库或我可以制作一个?

python console

9
推荐指数
1
解决办法
7305
查看次数

找到最能保留距离的双射

我有两个空格(维度不一定相等)有N个点.我试图找到点的双射(配对),以便尽可能地保留距离.

我似乎无法在线找到对此问题的可能解决方案或算法的讨论.任何人都可以建议我可以搜索的关键字吗?此问题是否有名称,或者是否出现在任何域中?

algorithm math machine-learning linear-algebra

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

克隆列表的元素

假设我有一个如下所示的Python列表:

list = [ a, b, c, d]
Run Code Online (Sandbox Code Playgroud)

我正在寻找最有效的方式来获得这个:

list = [ a, a, a, a, b, b, b, c, c, d ]
Run Code Online (Sandbox Code Playgroud)

因此,如果列表长度为N个元素,则第一个元素被克隆N-1次,第二个元素被克隆N-2次,依此类推......最后一个元素被克隆NN次或0次.有关如何在大型列表上有效执行此操作的任何建议.

python

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

iPhone - NSFetchedResultsController的缓存名称

G'day伙计们

我的CoreData驱动的应用程序有许多来自同一商店的数据视图,并且都使用NSFetchedResultsController.目前它们都具有NSFetchedResultsController缓存"Root"的相同名称.我的应用程序的用户可以,也可能会在视图之间不加选择地跳转.如果我为每个NSFetchedResultsController提供一个唯一名称的缓存,那对用户体验会更好吗?

TIA,佩德罗:)

iphone caching core-data

8
推荐指数
1
解决办法
2877
查看次数

尝试添加子视图时,不会调用drawRect

我正在尝试在主视图中添加子视图.这是我的viewController中的相关代码:

- (void)viewDidLoad {
    [super viewDidLoad];
    MyUIViewSubclass* myView = [[MyUIViewSubclass alloc] init]; 
    [self.view addSubview:myView]; // self.view is a simple UIView
    [myView setNeedsDisplay];
}
Run Code Online (Sandbox Code Playgroud)

myView中的drawRect不会被调用.

但是,如果我使用MyUIViewSubclass作为viewController的主视图(在Interface Builder中设置它),则会调用drawRect.

我需要做什么才能在我的subView中调用drawRect?

iphone objective-c uiview drawrect ios

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

将字节转换为short或整数

我有以下从套接字读入的代码:

Int8     buffer[102400];
UInt8     *buffer_p = buffer;;
int       bytesRead;
bytesRead = CFReadStreamRead(stream, buffer, 102400); 
Run Code Online (Sandbox Code Playgroud)

我期待的消息以短(2字节)短(2字节)整数(4字节)开始.我不知道如何将它们转换为相应的类型.

我尝试了以下方法:

uint16_t zero16 = NTOHS(buffer_p);
buffer_p += sizeof(uint16_t);
uint16_t msg_id16 = NTOHS(buffer_p);
buffer_p += sizeof(uint16_t);
uint32_t length32 = NTOHL(buffer_p);
buffer_p += sizeof(uint32_t);
Run Code Online (Sandbox Code Playgroud)

要么

NSMutableData *data = [NSMutableData dataWithBytes:buffer length:bytesRead];

NSRange firstshort = {0,2};
NSRange secondshort = {2,2};
NSRange intrange = {4,4};
short zero;
[data getBytes:&zero range:firstshort];
short msgid;
[data getBytes:&msgid range:secondshort];
int length;
[data getBytes:&length range:intrange];
Run Code Online (Sandbox Code Playgroud)

但非正在发挥作用.提前致谢.

objective-c

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