Рекурсивное объявление указателя функции в C

Как использовать Row и RowSpam на экранах XAML

blockquote>

Для понимания этого вы можете создать сетку из 3 столбцов и 3 строки, как показано ниже.


    
        
        
        
    
    
        
        
        
    

Если вы хотите занять два позади целых столбцов. вам нужно установить RowSpan как 3, а затем установить Column, который вы хотите запустить.



enter image description here

Ниже приведен полный код xaml.


    
        
        
        
    
    
        
        
        
    

    
    
    


    
    


20
задан Piotr Czapla 27 April 2009 в 13:49
поделиться

2 ответа

Это невозможно сделать в C: функция не может возвращать указатель на себя, так как объявление типа расширяется рекурсивно и никогда не заканчивается. См. Эту страницу для объяснения: http://www.gotw.ca/gotw/057.htm

Обходной путь, описанный на приведенной выше странице, означает возврат void (*) () правильно набранного указателя на функцию; ваш обходной путь, возможно, немного аккуратнее.

8
ответ дан 30 November 2019 в 01:31
поделиться

Это обсуждается в книге Херба Саттера More Exceptional C ++ , Item 32, где ответ (для C) кажется «не без использования приведений». Для C ++ это возможно с обычным введением класса, чтобы обеспечить некоторую дополнительную косвенность.

2
ответ дан 30 November 2019 в 01:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: