小编Ilm*_*nen的帖子

在发布模式下编译时,大规模嵌套循环会导致链接器无休止地运行吗?

我正在VS2010发布模式中编译一个非常小的Win32命令行应用程序,所有速度优化都打开(而不是内存优化).

此应用程序旨在用于单一目的 - 执行单个预定义的复杂数学运算,以找到针对特定问题的复杂解决方案.该算法完全正常运行(已确认),并且在调试模式下编译并运行良好.但是,当我在发布模式下编译时(算法足够大以利用优化),Link.exe似乎无休止地运行,代码永远不会完成链接.它的CPU使用率为100%,内存使用率没有变化(43,432 K).

我的应用程序只包含两个类,这两个类都是非常短的代码文件.但是,该算法包含20个左右的嵌套循环,每个层内都有内联函数调用.链接器是否尝试通过这些循环运行每个可能的路径?如果是这样,为什么Debug-Mode链接器没有任何问题?

这是一个很小的命令行应用程序(2KB exe文件),编译时间不应超过几分钟.到目前为止,我已经等了30分钟,没有任何变化.我正想着让它一夜之间链接,但如果它真的试图通过在算法的所有可能的代码路径来运行它可能最终没有派上用场一台超级计算机连接了几十年.

我需要做些什么才能让链接器脱离这个无休止的循环?这样的代码是否有可能在链接循环之前创建无限链接循环而不会出现编译器错误?

编辑:
Jerry Coffin指出我应该杀死链接器并再次尝试.我忘了在原帖中提到这个,但是我已经中止了构建,关闭并重新打开VS,并尝试多次构建.问题是一致的,但我还没有更改任何链接器选项.
EDIT2:
我也忽略了我删除了"Debug"和"Release"文件夹并从头开始重新构建的事实.结果相同.
EDIT3:
我刚刚确认关闭函数内联会导致链接器正常运行.问题是我需要函数内联,因为这是一个性能非常敏感的操作,内存占用最少.这让我想问,为什么内联会导致这样的问题发生?
EDIT4:
无限链接周期中显示的输出:

Link:
  Generating code
Run Code Online (Sandbox Code Playgroud)

编辑5:
我确认将所有代码放入单个CPP文件并没有解决问题.

c++ compiler-construction optimization linker infinite-loop

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

如何在MATLAB中编辑图像的轴以反转方向?

我想编辑正在显示的系列图像中的轴.

这就是我的图像:

抛物线

如您所见,它从上到下的范围从0到大约500.我可以反转吗?另外,我想镜像所显示的图像,以便它从左到右开始...或者,如果可能的话,让轴从右到左显示.

matlab plot axes image-processing

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

Android应用程序中的语音检测

描述


我的应用程序记录来自手机麦克风 我正在使用android标准类(android.media.AudioRecord)来做到这一点.当按下开始按钮应用程序开始记录时,应用程序有2个按钮" 开始 "和" 停止 " ,当我按停止应用程序停止记录并给我回缓冲区时,语音数据为.wav格式.一切正常.

问题


我想以这种方式改变我的应用程序,当应用程序开始工作时它开始分析来自麦克风的声音,如果用户保持静音应用程序继续分析来自麦克风的收入声音,如果用户开始说话应用程序开始记录来自麦克风的声音和然后用户完成谈话应用程序停止录制并给我回相同的缓冲区,语音数据为.wav格式.


  1. 我如何能够检测到该用户开始说话
  2. 我如何能够检测到该用户停止说话

android voice-detection

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

如何将用户定义的数据类型放入Dictionary中

我正在尝试定义自己的数据类型并将其作为值放在Dictionary中.VBA抱怨它不接受我的数据类型.关于如何使这个工作的任何想法?

Option Explicit

Public Type Translation
    german As String
    french As String
    italian As String
End Type

Private resource As Object

Public Sub addTranslation(key As String, g As String, f As String, i As String)
    Dim trx As Translation
    trx.german = g
    trx.french = f
    trx.italian = i

    resource.add key, trx  '<== here VBA is complaining
End Sub

Public Sub initResource()
    If resource Is Nothing Then Set resource = CreateObject("scripting.dictionary")
End Sub
Run Code Online (Sandbox Code Playgroud)

这是错误消息:

只有在公共对象模块中定义的用户定义类型才能被强制转换为变体或从变量强制转移或传递给后期绑定模块.

excel vba excel-2010

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

在iPhone上播放歌曲时通过麦克风检测噪音

我正在制作一个应该播放简单音轨的应用程序,让我知道在播放曲目时附近是否有噪音.这是通过在iPhone的扬声器上播放歌曲时从麦克风进行实时录制来完成的.任何不属于音乐播放的声音都被定义为噪音.

实现此功能的最简单方法是什么?

我在网上进行了相当广泛的研究,但是我找不到任何能指出这个特定问题的解决方案的东西.虽然它可能是我阅读的不同技术的组合,但最终将成为解决方案.

我已经实现的东西
同时播放歌曲和录制音频.

我尝试过的事情
注意:由于我们鼓励我们添加我们已尝试的内容,因此我添加以下部分.但我绝不是说这是解决问题的正确方法,这只是我尝试过的事情.

我攻击了aurioTouch2示例应用程序:我所做的是回放一次歌曲并记录快速傅立叶变换值(以非常低的采样率保持记录数据的数量较低).然后,当再次播放曲目时,我基本上计算(每个时间步长)使用实时回放fft数据构建的输出图形与记录的fft数据之间的相关系数(所以当你放置时看到的'波浪'线条)应用于fft模式).
这种"有点"有效.当房间内有过多的声音/噪音时,相关系数明显较低,但它不是非常敏感,也取决于记录fft数据时使用的音量.最后,我认为这可能不是最好的方法.

有人认为这是可能的吗?如果是这样,最好的方法是什么?
请询问您是否需要更多说明!

iphone audio fft noise ios

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

如何将字符串中的所有数字移动到字符串的开头?

对于以下字符串:

String str="asd14sd67fgh007";
Run Code Online (Sandbox Code Playgroud)

我想输出像:

1467007asdsdfgh
Run Code Online (Sandbox Code Playgroud)

我知道如何分割字符串,但我不知道如何得到它.对于拆分,我有这个代码:

public static void main(String[] args) {
    String str="asd14sd67fgh007";
    Pattern pattern = Pattern.compile("\\w+([0-9]+)\\w+([0-9]+)");
    Matcher matcher = pattern.matcher(str);
    for(int i = 0 ; i < matcher.groupCount(); i++) {
        matcher.find();
        System.out.println(matcher.group());
    }
}
Run Code Online (Sandbox Code Playgroud)

java regex string

13
推荐指数
3
解决办法
1135
查看次数

将遗留代码库从cvs转移到分布式存储库(例如git或mercurial).初始存储库设计所需的建议

介绍和背景

我们正在改变源代码控制系统,我们目前正在评估git和mercurial.总代码库大约有600万行代码,因此不是很大,也不是很小.

首先让我简单介绍一下当前存储库设计的外观.

我们有一个完整代码库的基本文件夹,在该级别下面有几个不同的上下文中使用的各种模块.例如,"dllproject1"和"dllproject2"可以看作完全独立的项目.

我们正在开发的软件是我们称之为配置器的软件,可以根据不同的客户需求进行无休止的定制.总共我们可能有50个不同的版本.但是,他们有一个共同点.它们共享一些必需的模块(mandatory_module1 ..).这些文件夹基本上包含内核/核心代码和公共语言资源等.然后,所有自定义都可以是其他模块(module1 ..)之间的任何组合.

由于我们目前正在使用cvs,因此我们在CVSROOT/modules文件中添加了别名.他们可能看起来像:

core –a mandatory_module1 mandatory_module2 mandatory_module3
project_x –a module1 module3 module5 core
Run Code Online (Sandbox Code Playgroud)

因此,如果有人决定使用project_x,他/她可以快速检查所需的模块:

base>cvs co project_x
Run Code Online (Sandbox Code Playgroud)

问题

直观地说,将基本文件夹作为单个存储库感觉是错误的.作为程序员,您应该能够查看当前正在使用的项目所需的确切代码子集.你对此有何看法?

另一方面,将每个模块放在不同的存储库中感觉更为正确.但这使得程序员更难以检查出他们需要的模块.您应该能够通过一个命令执行此操作.所以我的问题是:在git/mercurial中是否有类似的方法来定义别名?

任何其他问题,建议和指示都非常欢迎!

PS.我已经搜索了类似的问题,但并不觉得他们中的任何一个都100%适用于我的情况.

git cvs mercurial dvcs

12
推荐指数
2
解决办法
4246
查看次数

OpenCV:检测视频输入中的闪烁灯光

我有一个视频输入.此视频源包含几个以不同速率闪烁的灯.所有灯都是相同的颜色(它们都是红外LED).如何检测这些闪烁灯的位置和频率?

免责声明:我是非常新的OpenCV.我有一份学习OpenCV的副本,但我发现它有点压倒性.如果有人能用OpenCV术语解释解决方案,我们将不胜感激.我不希望为我编写代码.

opencv computer-vision feature-detection

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

在OpenCV C++中寻找人物轮廓

我想在照片中提取人物的轮廓并删除背景.照片可以拍摄全身,只有上半身或仅下半身.

到目前为止我所做的是使用Haar Cascades追踪脸部,但我使用的算法在脸上做了一个矩形,我需要整个身体的形状.我也尝试了HOG,但它也给了我一个矩形,它不适用于所有照片.

如果有人可以帮助我会很棒.我正在使用OpenCV和C++.

opencv object-detection image-segmentation

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

是否可以在CSS内容中显示.html文档或.html片段?

MDN的文件css content:

/* <uri> value */ 
content: url(http://www.example.com/test.html);
Run Code Online (Sandbox Code Playgroud)

题:

可以在元素的css content属性处显示图像的值htmlurl()content

.content {
  content: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAScAAADBCAYAAACNMHZqAAAABHNCSVQICAgIfAhkiAAAApJJREFUeJzt1DEBwCAQwMCnynEOBrqT4U5BpqzZcwYg5nsdAPDHnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUi6PDoDAbyCsn8AAAAASUVORK5CYII=);
}
Run Code Online (Sandbox Code Playgroud)
<div class="content"></div>
Run Code Online (Sandbox Code Playgroud)

例如,或者content在伪元素处使用属性::before

.content::before {
  content: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAScAAADBCAYAAACNMHZqAAAABHNCSVQICAgIfAhkiAAAApJJREFUeJzt1DEBwCAQwMCnynEOBrqT4U5BpqzZcwYg5nsdAPDHnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUgyJyDJnIAkcwKSzAlIMicgyZyAJHMCkswJSDInIMmcgCRzApLMCUi6PDoDAbyCsn8AAAAASUVORK5CYII=);
}
Run Code Online (Sandbox Code Playgroud)
<div class="content"></div>
Run Code Online (Sandbox Code Playgroud)


是否可以呈现.html文档,.html元素在css content

.content {
  content: url(data:text/html,abc);
}
Run Code Online (Sandbox Code Playgroud)
<div class="content"></div>
Run Code Online (Sandbox Code Playgroud)


另请参见CSS生成的内容模块级别3

content属性指示在元素或伪元素内呈现的内容.它采用逗号分隔的URI列表,后跟空格分隔的标记列表.如果提供了多个URI,则依次尝试每个URI,直到找到可用和支持的值.如果其他值失败,则最后一个值用作后备.

<uri>对于值的最后一个逗号分隔部分中的URI以外的URI,如果URI可用且支持格式,则元素或伪元素将成为替换元素,否则,逗号中的下一个项目将被分隔列表被使用,如果有的话.

例4

h1 { content: url(header/mng), url(header/png), none; }

在上面的示例中,如果header/mng不是支持的格式,则header/png可以使用它.在上面的示例中,如果header/png也不可用,则<h1>元素将为空,因为最后一个替代是none.

要使元素回退其内容,您必须显式提供内容作为后备: …

html css css3

12
推荐指数
2
解决办法
854
查看次数