我正在编写一个需要与twitter集成的C#应用程序,我需要能够执行以下操作:
免责声明:我是一个相当新的编程,所以这个问题可能很愚蠢.
在过去,每当我想要增加或减少整数时,我会使用integer++或integer--.然而,在阅读了更多的编程书籍后,我发现了运算符+=和-=(经过进一步的研究,我发现它被称为加法和减法赋值运算符).
显然,赋值运算符最强大,因为您可以改变想要增加或减少整数的数量.我想知道的是:使用integer++vs. 有什么好处或坏处integer += 1?
Interface Builder中的"经常更新"选项到底有什么作用?它是否以某种方式优化NIB以进行频繁更新?
更新频繁http://img696.imageshack.us/img696/5031/screenshot20100101at952.png
我开始使用Mercurial并选择MacHg作为我的首选GUI,因为这是我用Google搜索时发现的第一件事Mercurial Mac GUI.但是,我刚刚发现了Murky,最近更新了TortoiseHg用于Mac.是否有任何重要原因我应该选择另一个,或者只是决定哪个应用程序的界面我最喜欢?
在编写iOS应用程序时,Xcode会处理许多文件.我注意到,当我编程时,.xcodeproj文件总是被修改.我想知道的是,Mercurial 是否.xcodeproj应该忽略该文件.此外,Mercurial是否应该忽略任何其他文件?
我在C中有一个循环的,静态分配的缓冲区,我将其用作深度广度优先搜索的队列.我想排队队列中的前N个元素.使用常规qsort()会很容易 - 除了它是一个循环缓冲区,并且前N个元素可能会环绕.当然,我可以编写自己的排序实现,它使用模块化算法并知道如何包装数组,但我一直认为编写排序函数是一个很好的练习,但最好留给库.
我想到了几种方法:
另一方面,花一个小时考虑如何优雅地避免编写我自己的快速排序,而不是添加那些25(左右)线可能也不是最有效率...
更正:切换DFS和BFS时犯了一个愚蠢的错误(我更喜欢编写DFS,但在这种特殊情况下我必须使用BFS),对不起存在困惑.
进一步描述原始问题:
我正在实施广度优先搜索(对于与十五个难题不同的东西,只是更复杂,在每个状态中有大约O(n ^ 2)个可能的扩展,而不是4).完成了"强力"算法,但它是"愚蠢的" - 在每个点上,它以硬编码的顺序扩展所有有效状态.队列实现为循环缓冲区(unsigned queue [MAXLENGTH]),并将整数索引存储到状态表中.除了两个简单的函数来排队和出列索引之外,它没有封装 - 它只是一个简单的,静态分配的无符号数组.
现在我想添加一些启发式方法.我想要尝试的第一件事是在扩展后对扩展的子状态进行排序("以更好的顺序扩展它们") - 就像我编写一个简单的最好的第一个DFS一样.为此,我想参与队列(代表最近的扩展状态),并使用某种启发式对它们进行排序.我也可以按不同的顺序扩展状态(所以在这种情况下,如果我打破队列的FIFO属性,这并不重要).
我的目标不是实现A*,或者是基于深度优先搜索的算法(我不能扩展所有状态,但如果我不这样做,我将开始在状态空间中出现无限循环问题,所以我'必须使用迭代加深之类的东西).
我正在设置这个视图与iPhone游戏中的另一个交换.当我使用这段代码时......
- (void)viewDidLoad {
menuViewController = [[menuViewController alloc] initWithNibName:@"SomeViewController" bundle:nil];
self.menuViewController = menuViewController;
[self.view insertSubview:menuViewController.view atIndex:0];
[menuViewController release];
}
Run Code Online (Sandbox Code Playgroud)
... Xcode给了我一个警告"'SomeViewController'可能无法响应'-alloc'.我无法弄清楚如何摆脱这个警告......任何人都可以帮助我吗?
编辑:也许这会有所帮助.在我的.h文件中,我有...
@interface RabbitReflexViewController : UIViewController {
IBOutlet SomeViewController *menuViewController;
}
Run Code Online (Sandbox Code Playgroud)
......以及其他一些代码.我的.m文件包含上面的内容.