问题列表 - 第42710页

禁止实例化作为临时对象(C++)

我喜欢在c ++中使用哨兵类,但我似乎有一种精神上的痛苦,导致反复编写如下错误:

{
  MySentryClass(arg);
  // ... other code
}
Run Code Online (Sandbox Code Playgroud)

毋庸置疑,这是失败的,因为哨兵在创作后立即死亡,而不是在预期的范围结束时死亡.有没有办法防止MySentryClass被实例化为临时代码,以便上面的代码无法编译,或者至少在运行时中止错误消息?

c++ temporary temporary-objects

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

我应该索引什么?用户名或用户ID?

我有一个相当简单的表(原谅错误/愚蠢,我还在学习.为MySQL编写):

CREATE TABLE IF NOT EXISTS  `userdata` (
    `userid`    UNSIGNED int(18446744073709551615) AUTO_INCREMENT, 
    `username`  char(255) NOT NULL,
    `password`  char(255) NOT NULL,
    `salt`      char(255) NOT NULL,
    `email`     char(255) NOT NULL,

    PRIMARY KEY(`userid`)
);
Run Code Online (Sandbox Code Playgroud)

我已经读过添加索引可以提高查询的性能,因为它不需要查看整个数据库.相反,它会查看索引并匹配数据(如果我错了,请纠正我).

我已经找到了如何创建一个足够好的索引,但不是我应该索引的索引.
我应该在用户名上有我的索引吗?电子邮件地址,用户ID或我尚未添加的某个字段?

mysql sql indexing create-table

5
推荐指数
2
解决办法
2260
查看次数

在 SOX 中使用偏移混合音轨

在 ASP.Net 中,我使用 FFMPEG 将 Flash Media Server 上的 flv 文件转换为需要混合到单个 MP3 文件中的 wav。我最初完全使用 FFMPEG 进行了尝试,但最终放弃了混合步骤,因为我认为不可能将仅音频轨道合并到单个结果文件中。我愿意犯错。

我现在使用 FFMPEG 访问 FLV 文件并将音轨提取到 wav,以便SOX可以混合它们。问题是我必须将其中一个音轨偏移几秒钟,以便它们同步。每个文件都是学生和老师之间对话的一半。例如,teacher.wav 可能需要在 student.wav 之后 3.3 秒开始。我只能弄清楚如何将两个曲目同时开始的 SOX 文件混合在一起。

在这一点上,我最好的尝试是:

ffmpeg -y -i rtmp://server/appName/instance/student.flv -ac 1 student.wav 
ffmpeg -y -i rtmp://server/appName/instance/teacher.flv -ac 1 teacher.wav 

sox -m student.wav teacher.wav combined.mp3 splice 3.3
Run Code Online (Sandbox Code Playgroud)

这些工具 (FFMEG/SoX) 是根据我的最佳研究选择的,但不是必需的。任何可行的解决方案都将允许 ASP.Net 服务输入两个 FMS flv 并使用开源或免费工具创建组合的 MP3。

编辑: 我能够使用delaySOX 中的开关来抵消文件。

sox -M student.wav teacher.wav combined.mp3 delay 2.8
Run Code Online (Sandbox Code Playgroud)

如果有人有比 FFMPEG/SOX 组合解决方案更好的方法,我将问题悬而未决。

audio flv mp3 ffmpeg sox

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

如何使用String.Format将布尔类型转换为"ON""OFF"

有没有办法使用字符串格式化器将布尔类型转换为"ON"/"OFF",如:

Dim inpValue as Boolean
Dim outValue = String.Format("0:ON;OFF", inpValue)
' should show OFF as output
Run Code Online (Sandbox Code Playgroud)

没有代码或IFormatProvider?

vb.net formatting conditional string-formatting

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

传递给free()的指针是否必须指向内存块的开头,还是指向内部?

问题在于标题......我搜索但找不到任何东西.


编辑:

我真的没有必要解释这个问题,但是因为人们认为我说的话没有意义(我问的是错误的问题),这就是问题所在:

由于人们似乎对所有问题的"根"原因非常感兴趣而不是实际提出的问题(因为这显然有助于事情得到更好的解决,让我们看看它是否确实如此),这就是问题所在:

我正在尝试基于NTDLL.dll创建一个D运行时库,以便我可以将该库用于Win32子系统以外的子系统.所以这迫使我只与NTDLL.dll链接.

是的,我知道这些功能是"无证件"的,并且可能随时发生变化(即使我打赌一百美元,如果它仍然存在的话,20年后它仍然wcstombs可以做同样事情).是的,我知道人们(尤其是微软)不喜欢开发人员链接到该库,并且我可能会因此而受到批评.是的,上面的两点意味着在Win32子系统之前运行的程序如chkdsk和碎片整理程序甚至不应该首先创建,因为它实际上不可能与kernel32.dll或msvcrt.dll之类的东西链接.仍然有NT本地可执行文件,所以我们开发人员应该假装这些阶段永远不在我们的范围之内.

,我怀疑这里的任何人都希望我粘贴几千行代码并帮助我查看它们并试图弄清楚为什么我正在修改的源代码拒绝了未失败的内存分配.所以这就是为什么我问起了一个与"根"原因不同的问题,即使这被认为是社区的最佳实践.

如果事情仍然没有意义,请随时在下面发表评论!:)


编辑2:

经过大约8个小时的调试,我终于找到了问题:

事实证明,RtlReAllocateHeap()不会RtlAllocateHeap()指定给它的指针那样自动工作NULL.

c free memory-management calloc

6
推荐指数
2
解决办法
2800
查看次数

如何使@BeforeClass运行之前Spring TestContext加载?

它应该是程序员使用testNG的小菜一碟.我有这种情况

    @ContextConfiguration(locations={"customer-form-portlet.xml", "classpath:META-INF2/base-spring.xml" })
    public class BaseTestCase extends AbstractTestNGSpringContextTests {

...
        @BeforeClass
        public void setUpClass() throws Exception {
Run Code Online (Sandbox Code Playgroud)

但是我需要在@BeforeClass之后加载spring上下文.我想出了重写AbstractTestNGSpringContextTests方法:

@BeforeClass(alwaysRun = true)
protected void springTestContextBeforeTestClass() throws Exception {
    this.testContextManager.beforeTestClass();
}

@BeforeClass(alwaysRun = true, dependsOnMethods = "springTestContextBeforeTestClass")
protected void springTestContextPrepareTestInstance() throws Exception {
    this.testContextManager.prepareTestInstance(this);
}
Run Code Online (Sandbox Code Playgroud)

并制作我的方法

@BeforeClass(alwaysRun = true, dependsOnMethods = "setUpClass")
protected void springTestContextPrepareTestClass() throws Exception {
}
Run Code Online (Sandbox Code Playgroud)

但后来我得到:

引起:org.testng.TestNGException:org.springframework.test.context.testng.AbstractTestNGSpringContextTests.springTestContextPrepareTestInstance()不允许依赖受保护的void org.springframework.test.context.testng.AbstractTestNGSpringContextTests.springTestContextBeforeTestClass()抛出java. lang.Exception

公开也没有帮助.可以请任何人在这里提到它是否可以以一种工作方式完成:-)我知道我可以手动加载testContext,但这不会那么花哨.

它的工作方式与此类似,但TestContextManager不可见,因此我无法对其调用prepareTestInstance()方法:

@Override
@BeforeClass(alwaysRun = true, dependsOnMethods = "setUpClass")
public void springTestContextPrepareTestInstance() throws Exception {
}
Run Code Online (Sandbox Code Playgroud)

java junit testng spring spring-test

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

什么时候在D中删除?

我用C++学习了8年的D语言.我的问题是关于D垃圾收集 - 我什么时候使用删除,什么时候不需要?

garbage-collection memory-management d

11
推荐指数
2
解决办法
980
查看次数

Android 中浏览 XML(特别是 rss)的 Intent 过滤器

我有一个活动,我想在每次用户访问浏览器中的 xml(特别是 rss)页面时运行该活动(至少假设用户从可以支持它的应用程序列表中获取它)。

我目前已经有了当前的意图过滤器:

    <activity android:name=".activities.EpisodesListActivity"
        android:theme="@android:style/Theme.NoTitleBar">
        <intent-filter>
            <category android:name="android.intent.category.BROWSABLE"></category>
            <category android:name="android.intent.category.DEFAULT"></category>
            <action android:name="android.intent.action.VIEW"></action>
            <data android:scheme="http"></data>
        </intent-filter>
    </activity>
Run Code Online (Sandbox Code Playgroud)

现在您可以猜到,这是一个邪恶的意图,因为它希望在通过 http 请求页面时打开。但是,当我广告该行时:

<data android:mimeType="application/rss+xml"></data>
Run Code Online (Sandbox Code Playgroud)

做到这一点:

    <activity android:name=".activities.EpisodesListActivity"
        android:theme="@android:style/Theme.NoTitleBar">
        <intent-filter>
            <category android:name="android.intent.category.BROWSABLE"></category>
            <category android:name="android.intent.category.DEFAULT"></category>
            <action android:name="android.intent.action.VIEW"></action>
            <data android:scheme="http"></data>
            <data android:mimeType="application/rss+xml"></data>
        </intent-filter>
    </activity>
Run Code Online (Sandbox Code Playgroud)

该应用程序不再声称能够运行 rss 文件。

另外,如果我将该行更改为:

<data android:mimeType="application/xml"></data>
Run Code Online (Sandbox Code Playgroud)

它也不起作用(甚至对于通用 xml 文件)。

那么我需要做什么意图过滤器才能声明该活动支持 rss。

(另外,如果你能告诉我如何知道用户打开的 URL,那就加分了。到目前为止,我总是使用附加功能将信息从一个活动发送到另一个活动)。

感谢您的帮助

android android-intent

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

使用curl提交/检索表单结果

我需要帮助尝试使用curl将数据发布到页面并在提交表单后检索结果.

我创建了一个简单的表单:

<form name="test" method="post" action="form.php">              
    <input type="text" name="name" size="40" />
    <input type="text" name="comment" size="40" />
    <input type="submit" value="submit" />
</form>
Run Code Online (Sandbox Code Playgroud)

另外,我有php代码在同一页面中处理这个表单.它所做的只是回显表单值.

我一直在使用的卷曲是这样的:

  $h = curl_init();

  curl_setopt($h, CURLOPT_URL, "path/to/form.php"); 
  curl_setopt($h, CURLOPT_POST, true);
  curl_setopt($h, CURLOPT_POSTFIELDS, array(
  'name' => 'yes',
  'comment' => 'no'
  ));
  curl_setopt($h, CURLOPT_HEADER, false);
  curl_setopt($h, CURLOPT_RETURNTRANSFER, 1);

  $result = curl_exec($h);
  echo $result;
Run Code Online (Sandbox Code Playgroud)

当我启动包含curl代码的页面时,我得到了form.php页面内容,但它没有显示PHP在提交表单时应该回显的变量.

我很感激任何帮助.

谢谢.

php post curl libcurl

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

C#.NET控制台应用程序使用的控制台字体和布局

我如何设置Windows(或Visual Studio,或我的应用程序),以便当我通过从Visual Studio 2010中按F5运行控制台应用程序时,我可以使用我选择的字体而不是80x25标准CMD/DOS获得120x50布局窗口?

(甚至更好 - 有谁知道如何让VS在Console2或bash而不是cmd.exe中运行控制台应用程序?)

c# console layout cmd visual-studio-2010

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