小编Rav*_*mer的帖子

为什么C会在中途循环中途卡住?

当我编译并运行这段代码(它是一个更大的程序的一部分)时,Linux会在while循环中途完成,然后就会停止工作.

下面的代码打印time: 0然后挂起,在我暂停进程之前不做任何其他操作.为什么它会打印time: 0而不是以下的理智检查线?

while (i < 5)
{
    printf("time: %d\n",elapsedTime);
    printf("sanity check");
    foo();
    i++;
}
Run Code Online (Sandbox Code Playgroud)

c while-loop

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

在运行时使用反射来实例化未知类的对象的正确方法是什么?

我正在使用Configuration Loader类,以便我可以通过外部文本文件(config.txt)更改程序的参数,而不必每次更改时都重新编译我的代码.

有人建议我使用Java的Reflection来做这件事,但是我对如何实现它有点困惑.

我已经能够从我的文本文件中成功提取其构造函数的类名和参数,但是如何从此实例化到实例化对象?

到目前为止,这是我的方法:

public void loadObject(String classString, HashMap hm)
  {
  String className = props.getProperty(classString);
  Class c = Class.forName(className);
  }
Run Code Online (Sandbox Code Playgroud)

classString是一个包含类名称的字符串,hm是一个hashmap,其中类的构造函数参数映射到它们的预期值.

也就是说,class Foo (int xPos, float yPos)"xPos"将映射到预期int的字符串,"yPos"映射到预期float的字符串.我希望能够返回,new Foo(hm.get"xPos".toInt, hm.get"yPost".toFloat)但我不确定如何动态使用这样的构造函数(问题是,有多个可能的类 - 例如,它可能是一个bar而不是一个foo).

我知道可以基于classString做一个if/else,并且在识别它之后简单地调用正确的构造函数,但我希望创建一个更加可扩展的代码,每次添加时都不需要重写该课程的新课程.

所有可能的对象都从单个父对象继承.

java reflection

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

如何使ListView中的项目具有不同的颜色?

我有一个ListViewItems的ListView.

当某个事件触发时,我想强调其中的一些,所以我正在寻找一种方法将listview的颜色改为黑色以外的东西(红色会令人愉快).

是否可以动态更改默认winforms ListView中项目的颜色?

如果不是,是否有一些简单的方法可以动态地强调项目?

c# listview winforms

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

初始化数组时出现Seg Fault

我正在上课,并遇到分段错误.根据我的理解,当您访问尚未分配的内存或超出边界时,应该发生seg错误.'当然我要做的就是初始化一个数组(虽然相当大)

我只是误解了如何解析二维数组?错位一个绑定正是导致seg错误的原因 - 我使用嵌套是错误的for-loop吗?

教授提供了时钟功能,所以我希望这不是问题所在.我在Cygwin中运行此代码,这可能是问题吗?源代码如下.也使用c99标准.

要非常清楚:我正在寻找帮助理解(并最终修复)我的代码产生seg错误的原因.

#include <stdio.h>
#include <time.h>
int main(void){
   //first define the array and two doubles to count elapsed seconds.   
   double rowMajor, colMajor;
   rowMajor = colMajor = 0;
   int majorArray [1000][1000] = {};

   clock_t start, end;

   //set it up to perform the test 100 times.
   for(int k = 0; k<10; k++)
   {
   start=clock();
   //first we do row major
   for(int i = 0; i < 1000; i++)
   {
       for(int j = 0; j<1000; j++)
       {
           majorArray[i][j] …
Run Code Online (Sandbox Code Playgroud)

c for-loop segmentation-fault multidimensional-array

8
推荐指数
2
解决办法
5815
查看次数

在catchblock中使用"Throw"(没有别的!)

可能重复:
throw和throw之间的差异新异常()

我是一名致力于为遗留代码添加新功能的程序员.在调试时,我解析了这个Catch块,它从Visual Studio得到了一个愤怒的"对象未设置为对象的引用"通知:

catch(Exception ex)
            {
                SporeLog.Log("Failed to create new SavedDocumentList with Name: " + name, ex);
                throw;
            }
Run Code Online (Sandbox Code Playgroud)

"扔"是什么意思.我很熟悉,throw new [exceptiontype]...但这对......来说意味着什么throw

这是一个好的做法,还是应该改变这些代码以简化开发人员对我的试验?

为什么Visual Studio会因此而对我大喊大叫呢?

c# try-catch throw visual-studio-2008

7
推荐指数
2
解决办法
1121
查看次数

是否有一种优雅的方式来解析文本文件*向后*?

可能重复:
如何在Ruby中从下到上读取文件?

在处理我的Ruby程序的过程中,我得到了Eureka Moment,如果我能够向后解析文本文件而不是向前解析它会更简单.

看起来这将是简单简单地阅读文本文件,一行行,到一个数组,然后向后写行到一个文本文件,解析这个临时文件转发(这将现在实际上倒退)进行必要的更改,将生成的行重新编入数组,然后再次向后写入,恢复原始方向,然后将修改保存为新文件.

虽然理论上可行,但我在实践中看到了几个问题,其中最大的问题是,如果文本文件的大小非常大,单个数组将无法一次保存整个文档.

是否有更优雅的方式来完成向后阅读文本文件?

ruby

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

如何在课程之间设置代理?

我正在使用一些结构化的代码:

表单A中包含用户控件B和G. 用户控件B在其中具有用户控件D,并且用户控件D具有"刷新"方法.用户控件G在其中具有用户控件F,并且用户控件F需要在D中调用"刷新"方法.

1)没有对代码进行重组(这是遗留代码,所以它作为一个选项不在桌面上),委托代表处理这个问题的最佳方法是什么?如果没有,你还有其他建议吗?

2)我没有代理功能的经验 - 是否有一个很好的入门或示例,我可以使用它来适应我的代码以实现所需的功能?

c# delegates winforms

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

通过VS2010连接到SVN存储库

我正在寻找一种方法来创建存储在存储库中的程序的本地副本,以便我可以处理它们; 这是我第一次使用SVN.

我有一个SVN存储库的IP地址,端口号和密码.有什么方法可以通过Visual Studio本身访问存储库(可能通过可下载的插件)?

svn visual-studio-2010 visual-studio

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

为什么贪婪算法没有找到二分图的最大独立集?

我试图使用贪婪方法解决二分图上的最大独立集问题.所以遇到了这篇文章,这正是我试图做的事情.但我只关注二分图.答案中的反案例不是二分图.是否有任何二分图表这个不适用?

Greedy(G):
 S = {}
 While G is not empty:
 Let v be a node with minimum degree in G
 S = union(S, {v})
 remove v and its neighbors from G
return S
Run Code Online (Sandbox Code Playgroud)

为什么贪心算法没有找到最大的独立图集?

algorithm graph-theory graph

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

如何将浮点数格式化为一定数量的十进制和整数?

我试图将Ruby中的浮点格式化为四位数,包括小数.

例如:

1 => 01.00
2.4 => 02.40
1.4455 => 01.45
Run Code Online (Sandbox Code Playgroud)

现在,我正在尝试格式化浮动,如下所示:

str_result = " %.2f " %result
Run Code Online (Sandbox Code Playgroud)

哪个成功将小数位限制为两个.

我也知道:

str_result = " %2d " %result
Run Code Online (Sandbox Code Playgroud)

哪个成功变成101,但丢失了小数位.

我尝试将这些结合起来:

str_result = " %2.2f " %result
Run Code Online (Sandbox Code Playgroud)

没有明显的效果.它具有与之相同的结果%.2f.

有没有办法强制Ruby将字符串格式化为这种四位数格式?

ruby

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