小编Jos*_*ley的帖子

在x86 Linux上调试SIGBUS

在Linux中的通用x86用户态应用程序上会导致SIGBUS(总线错误)的原因是什么?我在网上找到的所有讨论都是关于内存对齐错误,根据我的理解,它并不适用于x86.

(我的代码在Geode上运行,以防有任何相关的处理器特定怪癖.)

linux debugging bus-error sigbus

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

从Python2到Python3的解包行为的这种变化是什么?

昨天我在Python 2和Python 3之间遇到了这个奇怪的解包差异,并且在快速谷歌搜索之后似乎没有找到任何解释.

Python 2.7.8

a = 257
b = 257
a is b # False

a, b = 257, 257
a is b # False
Run Code Online (Sandbox Code Playgroud)

Python 3.4.2

a = 257
b = 257
a is b # False

a, b = 257, 257
a is b # True
Run Code Online (Sandbox Code Playgroud)

我知道它可能不会影响程序的正确性,但它确实让我有点烦恼.任何人都可以在拆包时给出一些关于这种差异的见解吗?

python python-2.7 python-3.x difference iterable-unpacking

18
推荐指数
2
解决办法
720
查看次数

如何让Vera ++忽略部分/所有规则的代码部分?

我正在使用Vera ++对我的C++代码执行一些静态分析.(在Visual Studio 2008中)

但是,我知道并接受一些代码块会破坏某些规则.

我希望能够以某种方式告诉Vera ++避免使用这些方法或代码段,因此报告仅显示我想要调整的代码区域.

有什么我可以放入我的代码中,例如特殊格式的注释,允许某些代码块忽略某些规则吗?

c++ static-analysis vera++

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

成员函数有时是const

我有一个类似于以下的类设计:

class MyClass {
public:
    bool IsValid() const;
    void MakeValid();
private:
    bool CheckValidity(bool fix);
};

bool MyClass::IsValid() const {
    // Check validity, but don't fix any problems found.  Doesn't work.
    return CheckValidity(false);
}

void MyClass::MakeValid() {
    // Check validity and fix problems found.
    CheckValidity(true);
}
Run Code Online (Sandbox Code Playgroud)

IsValid应该是const,因为它没有做出改变.MakeValid应该是非const的,因为它确实会发生变化.它们共享相同的实现,CheckValidity但由于CheckValidity可能会或可能不会进行更改,因此无法进行标记const.

处理这个问题的最佳方法是什么?最简单的方法是使用const_cast,但抛弃const感觉有点脏:

bool MyClass::IsValid() const {
    // Check validity, but don't fix any problems found.
    return const_cast<MyClass*>(this)->CheckValidity(false);
}
Run Code Online (Sandbox Code Playgroud)

这是合法使用的const_cast吗?有更好的方法吗?

c++ const

14
推荐指数
2
解决办法
771
查看次数

如何在StackPanel内垂直对齐TextBox?

在下面的XAML中,单词"Test" 水平居中但不垂直居中.

如何让它垂直居中?

<Window x:Class="TestVerticalAlign2343.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        WindowStartupLocation="CenterScreen"
    Title="Window1" Height="768" Width="1024">
    <DockPanel LastChildFill="True">
        <Slider x:Name="TheSlider"
                DockPanel.Dock="Left"
                Orientation="Vertical"
                HorizontalAlignment="Center"
                HorizontalContentAlignment="Center"
                Minimum="0"
                Maximum="10"
                Cursor="Hand"
                Value="{Binding CurrentSliderValue}"
                IsDirectionReversed="True"
                IsSnapToTickEnabled="True"
                Margin="10 10 0 10"/>
        <Border DockPanel.Dock="Right" Background="Beige"
                Padding="10"
                Margin="10"
                CornerRadius="5">
            <StackPanel Height="700">
                <TextBlock
                    Text="Test"
                    HorizontalAlignment="Center"
                    VerticalAlignment="Center"
                    FontSize="200" x:Name="TheNumber"/>

            </StackPanel>
        </Border>
    </DockPanel>
</Window>
Run Code Online (Sandbox Code Playgroud)

xaml stackpanel

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

Eclemma总是报告0%的代码覆盖率

我的应用程序有一个Maven测试项目.

JUnit测试运行正常,代码覆盖率测试也运行.

但该报告始终显示0%的代码覆盖率.

我该怎么办?

java eclemma

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

从Vim Spell检查中排除大写单词

有太多的首字母缩略词和专有名词可以添加到字典中.我想任何包含大写字母的单词都要从拼写检查中排除.单词由while-space或特殊字符(即非字母表)分隔.这可能吗?

当小写和特殊字符围绕大写单词时,答案的第一部分失败:

,jQuery,
, iPad,
/demoMRdogood/
[CSS](css)
`appendTo()`,
Run Code Online (Sandbox Code Playgroud)

当小写单词由特殊字符分隔时,当前答案会给出误报(从拼写检查中排除).以下是示例:

(async)
leetcode, eulerproject, 
Run Code Online (Sandbox Code Playgroud)

赏金是针对解决此问题的人.

vim spell-checking

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

C++是否提供"三重"模板,与<T1,T2>对相比?

C++有没有像std :: pair但有3个元素的东西?

例如:

#include <triple.h>
triple<int, int, int> array[10];

array[1].first = 1;
array[1].second = 2;
array[1].third = 3;
Run Code Online (Sandbox Code Playgroud)

c++ stl std-pair

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

单元测试大数据集?

对大型数据集进行单元测试的最佳方法是什么?我维护的一些遗留代码具有一百个或更多成员的结构; 我们正在处理的代码的其他部分创建或分析数百个样本的数据集.

到目前为止,我发现的最佳方法是从磁盘序列化结构或数据集,执行测试中的操作,将结果序列化到磁盘,然后将包含序列化结果的文件与包含预期结果的文件区分开来.这不是非常快,它违反了"不接触磁盘"的单元测试原则.但是,我能想到的唯一选择(编写代码来初始化和测试数百个成员和数据点)似乎无比乏味.

还有更好的解决方案吗?

unit-testing

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

Windows 7任务栏进度适用于一个应用程序,但不适用于另一个

我有两个不同的应用程序,包括用C++ Builder 2009编写的本机应用程序,两个MDI,都使用相同的进度条实用程序代码.其中一个正确更新了Windows 7任务栏及其进度.另一个没有.

我发现两个应用程序之间没有任何明显的差异.失败的应用程序中没有报告错误:调用ITaskbarList3::SetProgressValueITaskbarList3::SetProgressState返回S_OK,但Windows 7任务栏中没有任何反应.

让Windows 7任务栏进度条工作有什么陷阱吗?我可能缺少哪些要求?

windows taskbar windows-7 progress-bar

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