無料で使えるシステムトレードフレームワーク「Jiji」 をリリースしました!

・OANDA Trade APIを利用した、オープンソースのシステムトレードフレームワークです。
・自分だけの取引アルゴリズムで、誰でも、いますぐ、かんたんに、自動取引を開始できます。

Hello C++ World!

ここでC++ですよ。
遥か昔に買って放置していたはじめてのC++を参考に遊んでみたいと思います。まずはHello World

環境

Linuxでg++を使います。

Hello World

本に載ってたコードを丸写し。

#include <iostream.h>

int main() {
    cout << "Hello C++ World" << endl;
    return 0;
}

コンパイルします。「-o ファイル名」オプションで実行ファイルのファイル名を指定できるようです。

$ g++ -o HelloWorld  HelloWorld.cpp 
/usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/backward/iostream.h:31 から include されたファイル中,
                 HelloWorld.cpp:1 から:
/usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/backward/backward_warning.h:32:2: 警告: #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the <X.h> header for C++ includes, or <iostream> instead of the deprecated header <iostream.h>. To disable this warning use -Wno-deprecated.

警告が出たけど、コンパイルはできた。実行してみます。

$ ./HelloWorld
Hello C++ World

警告を消す。

ではなくとしろ、といわれているようです。修正します。

#include <iostream>

int main() {
    cout << "Hello C++ World" << endl;
    return 0;
}

コンパイルします。

$ g++ -o HelloWorld  HelloWorld.cpp 
HelloWorld.cpp: In function `int main()':
HelloWorld.cpp:4: error: `cout' was not declared in this scope
HelloWorld.cpp:4: error: `endl' was not declared in this scope

エラーになりました。orz.

エラーを直す。

Googleさんに聞いて解決。→標準C++ namespaceについて
ネームスペースを指定する必要があるようです。

#include <iostream>

int main() {
    std::cout << "Hello C++ World" << std::endl;
    return 0;
}

コンパイル

g++ -o HelloWorld  HelloWorld.cpp 

完璧です。実行してみます。

$ ./HelloWorld
Hello C++ World