Inline::Cで学ぶperlguts(その6)
小ハマりしたのでメモ。
void Foo(void) { # void は戻り値の型としてだけ有効です
引用元:
http://perldoc.jp/docs/modules/Inline-0.43/C/C.pod
つまり、こういうこと。
use v5.14; use strict; use warnings; use Inline C => q{ SV * foo() { return newSViv( 123 ); } SV * bar(void) // <- 悪い例 { return newSViv( 456 ); } }; say foo(); say bar();
$ perl aaa.pl
123
Undefined subroutine &main::bar called at aaa.pl line 18.
個人的に、引数がない場合はvoid
って書きたいんだけど、
書いてしまうと、Inline::C
がその関数定義を理解できなくなるとのこと。
おしまい。
Leave a Comment