小编M. *_*ley的帖子

什么时候在C++中改变一个值的位?

我有一个unsigned int实际存储有符号值的C++ .我想将此变量转换为a signed int,以便无符号和有符号值具有相同的二进制值.

unsigned int lUnsigned = 0x80000001;
int lSigned1 = (int)lUnsigned;                   // Does lSigned == 0x80000001?
int lSigned2 = static_cast<int>(lUnsigned);      // Does lSigned == 0x80000001?
int lSigned3 = reinterpret_cast<int>(lUnsigned); // Compiler didn't like this
Run Code Online (Sandbox Code Playgroud)

什么时候强制转换在C++中改变变量的位?例如,我知道从a int到a的转换float会改变位,因为它int是二进制补码并且float是浮点数.但其他场景呢?我不清楚C++中的规则.

在C99规范的6.3.1.3节中,它表示从无符号到有符号整数的转换是编译器定义的!

c++ casting

19
推荐指数
1
解决办法
5548
查看次数

在WPF应用程序中使用XAML矢量图形

我有一个我在XAML中定义的矢量图像.在WPF应用程序中使用此资源的正确方法是什么?

我想将矢量图像放在自己的XAML文件中,然后将图像添加到我的应用程序中的其他UserControls.什么应该是我的XAML矢量图像中的顶级元素?如何在其他UserControl中引用该图像?

wpf xaml vector-graphics

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

WPF中StatusBarItem类的重点是什么?

StatusBarItem课程应该如何使用?一个内容中的每个元素都StatusBar应该用它包裹吗?

我真的不明白如何StatusBarItem影响StatusBar布局.好像我可以HorizontalAlignment在a上使用StatusBarItem,但是当我StatusBar直接放入元素时:

<StatusBar>
    <TextBlock HorizontalAlignment="Right" Text="Not right" />
    <StatusBarItem HorizontalAlignment="Center">
        <TextBlock Text="Center" />
    </StatusBarItem>
</StatusBar>
Run Code Online (Sandbox Code Playgroud)

此外,如果你裹SeparatorStatusBarItemSeparator变化水平.SeparatorStatusBar没有StatusBarItem包装器直接放入时,默认为垂直.

wpf statusbar statusbaritem

15
推荐指数
1
解决办法
5271
查看次数

NUnit.Mocks文档在哪里?

NUnit的模拟库NUnit.Mocks的文档在哪里?

我在他们的官方文档维基中找不到任何内容.

documentation nunit nunit-mocks

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

忽略传递给Type.GetType()的程序集限定名称中的版本

传入的程序集限定名称是否可以指定与实际加载的DLL版本不同的Type通道?如果是这样,那么行为是什么?Type.GetType()GetType()VersionGetType()

Type无论程序集是什么版本,我都希望从程序集中获取.我有一个函数,它获取一个程序集限定的名称作为参数:

Type someType = Type.GetType(someName);
Run Code Online (Sandbox Code Playgroud)

someName值对应于Type我想要获取的值,但它可能与Version我的应用程序中加载的值不同.

.net reflection types version

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

删除WPF ListView的"经典"缩进边框

如何从WPF ListView控件周围删除"经典"缩进边框?将其设置BorderThickness为0并没有摆脱它.

wpf listview styles border

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

触发ScrollViewer的滚动条可见性(WPF)

是否可以创建基于ScrollViewer滚动条可见性触发的触发器?我有一个ScrollViewer与它VerticalScrollBarVisibility设置为Auto,我想改变一些的ScrollViewer的属性只有当在滚动条实际上是可见的.

像这样的东西:

<ScrollViewer VerticalScrollBarVisibility="Auto">
    <ScrollViewer.Triggers>
        <Trigger Property="IsScrollBarVisible" Value="True">
            <!-- Setters -->
        </Trigger>
    </ScrollViewer.Triggers>
</ScrollViewer>
Run Code Online (Sandbox Code Playgroud)

wpf xaml triggers scrollviewer

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

WPF控件是否在绑定中使用弱事件?

当我在WPF中使用数据绑定时,我的目标控件正在侦听绑定源上的事件.例如,我可能正在ListView监听CollectionChangeda上的事件ObservableCollection.

如果事件源的生命周期预计超过事件侦听器的生命周期,则可能存在内存泄漏,应使用弱事件模式.

WPF数据绑定是否遵循弱事件模式?如果我的ObservableCollection生命比我的寿命长,我ListViewListView被垃圾收集吗?


这就是我怀疑WPF控件不实现弱事件模式的原因.如果他们这样做,我会期望两者DerivedListView Collected!DerivedTextBlock Collected!输出到控制台.相反,只有DerivedTextBlock Collected!.

修复代码中的错误后,将收集这两个对象.我不知道该怎么想.

Window1.xaml.cs

using System;
using System.Collections.ObjectModel;
using System.Windows;
using System.Windows.Controls;

namespace LeakDetector
{
    public class DerivedListView : ListView
    {
        ~DerivedListView()
        {
            Console.WriteLine("DerivedListView Collected!");
        }
    }

    public class DerivedTextBlock : TextBlock
    {
        ~DerivedTextBlock()
        {
            Console.WriteLine("DerivedTextBlock Collected!");
        }
    }

    public partial class Window1 : Window
    {
        // The ListView will bind to this collection and …
Run Code Online (Sandbox Code Playgroud)

data-binding wpf weak-events

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

XmlRootAttribute是可继承的吗?

我有一个用C#的XmlSerializer序列化的类.它标有XmlRoot属性,我想在派生类中继承此属性.

查看文档时,它没有说XmlRoot使用AttributeUsageAttribute将Inherit设置为false(Inherit应该默认为true),但是在尝试反序列化没有XmlRoot属性的继承类时出错("<rootNode xmlns ='' >没想到.").

这目前有效:

[Serializable()]
[XmlRoot("rootNode")]
public class BaseClass
{
    [XmlAttribute("attributeA")]
    public int A { get; set; }
}

[Serializable()]
[XmlRoot("rootNode")]
public class InheritedClass : BaseClass
{
    [XmlElement("elementB")]
    public int B { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

这不起作用,但我想要的是:

[Serializable()]
[XmlRoot("rootNode")]
public class BaseClass
{
    [XmlAttribute("attributeA")]
    public int A { get; set; }
}

[Serializable()]
public class InheritedClass : BaseClass
{
    [XmlElement("elementB")]
    public int B { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我可能会尝试将反序列化的XML InheritedClass看起来像这样:

<rootNode attributeA="abc">
    <elementB>123</elementB> …
Run Code Online (Sandbox Code Playgroud)

c# inheritance attributes xmlserializer

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

使用Write-Error写入Powershell中的错误流

为什么Powershell的Write-Errorcmdlet 不能为我工作?我的输出看起来不像文档中的示例:

PS C:\> Write-Error "This is an error"
Write-Error "This is an error" : This is an error
    + CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
    + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException
Run Code Online (Sandbox Code Playgroud)

我一直期待输出类似于Write-Warning:

PS H:\> Write-Warning "This is a warning"
WARNING: This is a warning
Run Code Online (Sandbox Code Playgroud)

Write-Errorabout_preference_variables文档我认为我不应该看到任何例外?

PS H:\> Get-Help About_Preference_Variables

$ErrorActionPreference
----------------------

...

        PS> $erroractionpreference                      
        Continue        # Display the value of the preference.                

        PS> write-error "Hello, World"                  
                                # Generate a non-terminating error.

        write-error "Hello, …
Run Code Online (Sandbox Code Playgroud)

powershell write-error

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