Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы программирования на FORTRAN (ФОРТРАН)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

Lapochka ili Chai



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору


Код:
 
module passed_object_example
    type t
        real :: a
        procedure(print_me), pointer, pass(arg) :: proc
    end_type t
 
contains
 
    subroutine print_me (arg, lun)
        type(t), intent(in) :: arg
        integer, intent(in) :: lun
        write (lun,*) arg%a
    end subroutine print_me
 
    subroutine print_my_square (arg, lun)
        type(t), intent(in) :: arg
        integer, intent(in) :: lun
        write (lun,*) arg%a**2
    end subroutine print_my_square
 
end module passed_object_example
 
program main
 
    use passed_object_example
    use iso_fortran_env, only :: output_unit
    type(t) :: x
    x%a = 2.71828
    x%proc => print_me
    call x%proc(output_unit)
    x%proc => print_my_square
    call x%proc(output_unit)
 
end program main
 
 


Всего записей: 847 | Зарегистр. 27-11-2003 | Отправлено: 07:48 14-01-2011 | Исправлено: Lapochka ili Chai, 09:19 14-01-2011
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы программирования на FORTRAN (ФОРТРАН)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru