é¢æ°/é¢æ°ã®ãããã¿ã¤ã宣è¨
é¢æ°ãå®ç¾©ãã¦ã¿ã¾ãã
å½¢å¼
åºæ¬ã®å½¢å¼ã¯æ¬¡ã®ã¨ãããJavaã¨ä¼¼ãæãã§ãã
<æ»ãå¤ã®å> <é¢æ°å>( <å¼æ°ã®å> <ä»®å¼æ°>, <å¼æ°ã®å> <ä»®å¼æ°> ... ) { å¦ç ... }
ãµã³ãã«
#include <iostream> // é¢æ°å®ç¾© int add( int i ){ return i+1; } int main() { int i = 0; std::cout << i << std::endl; i = add( i ); // é¢æ°ãå®è¡ã std::cout << i << std::endl; return 0; }
å®è¡çµæã§ãã
0 1
é¢æ°ã®ãããã¿ã¤ã宣è¨
C++ã§ã¯ãé¢æ°ã¯å©ç¨ããåã«å®ç¾©ããã¦ããããå ã«é¢æ°ã®ãããã¿ã¤ã宣è¨ããã¦ããå¿ è¦ãããã¾ãã(é¢æ°ãã®ãã®ãã¾ãã¯ãããã¿ã¤ã宣è¨ããã¨ã«é¢æ°ã®å¼ã³åºãå½¢å¼ãä¸æ£ã§ã¯ãªãããã§ãã¯ãã¦ãããããã)
ãããã¿ã¤ã宣è¨ã®å½¢å¼ã¯æ¬¡ã®ã¨ããã§ãã
<æ»ãå¤ã®å> <é¢æ°å>( <å¼æ°ã®å> <ä»®å¼æ°>, <å¼æ°ã®å> <ä»®å¼æ°> ... );
ãµã³ãã«:ãããã¿ã¤ã宣è¨ãããªãã¨ã¨ã©ã¼ã«ãªã
ä¸ã®ãµã³ãã«ã®é¢æ°ãaddãã®å®ç¾©ããmainãã®å¾ã«ç§»åãããã®ãã³ã³ãã¤ã«ã¨ã©ã¼ã«ãªãã¾ãã
#include <iostream> int main() { int i = 0; std::cout << i << std::endl; i = add( i ); // é¢æ°ãå®è¡ã std::cout << i << std::endl; return 0; } // é¢æ°å®ç¾© int add( int i ){ return i+1; }
ã³ã³ãã¤ã«ãâã¨ã©ã¼çºçã
$ g++ -o sample function-error.cpp function-error.cpp: In function `int main()': function-error.cpp:7: error: `add' was not declared in this scope
ãµã³ãã«:ãããã¿ã¤ã宣è¨ã追å ã
ã¨ã©ã¼ã¨ãªã£ãã³ã¼ãã«ãããã¿ã¤ã宣è¨ã追å ãã¦ã¿ã¾ãã
#include <iostream> // é¢æ°ã®ãããã¿ã¤ãå®£è¨ int add( int i ); int main() { int i = 0; std::cout << i << std::endl; i = add( i ); // é¢æ°ãå®è¡ã std::cout << i << std::endl; return 0; } // é¢æ°å®ç¾© int add( int i ){ return i+1; }
ã³ã³ãã¤ã«ãã¨ã©ã¼ãä¿®æ£ããã¦ãã¾ãã
g++ -o sample function-prototype.cpp
å®è¡çµæã§ãã
0 1