结构中的函数指针

时间:2016-05-24 13:55:18

标签: c++ c function-pointers

假设我有以下类型:

typedef uint8 (*P2MyFunc)(void);

typedef struct
{
    P2MyFunc ptr;
}MyStruct;

给定inst的{​​{1}}个实例。以下电话之间有什么不同吗?

MyStruct

两者似乎都运行得很好,但第一个可能容易出现编译器警告。

1 个答案:

答案 0 :(得分:0)

根据C标准,它们的含义完全相同。你甚至可以更进一步。以下结果给出了相同的结果:

<UserControl.Resources>
    <DataTemplate DataType="{x:Type vm:ImageScreensaverViewModel}">
        <Image Source="{Binding Image}" Stretch="Uniform"/>
    </DataTemplate>

    <DataTemplate DataType="{x:Type vm:VideoScreensaverViewModel}">
        <MediaElement x:Name="Player" Source="{Binding Video}" LoadedBehavior="Play" />
    </DataTemplate>
</UserControl.Resources>

<UserControl.CommandBindings>
    <CommandBinding Command="MediaCommands.Pause" Executed="PausePlayer" CanExecute="CanExecute"/>
    <CommandBinding Command="MediaCommands.Play" Executed="PlayPlayer" CanExecute="CanExecute"/>
</UserControl.CommandBindings>

<Grid>
    <ContentControl x:Name="ScreanSaverContent" Content="{Binding CurrentVm}"/>
</Grid>