2014年7月7日月曜日

C++での入出力

最初の入出力iostream

プログラミング言語で最初に行うのは、自分の打ちこんだデータを出力することでしょう。 そのためにまず入出力の方法を知らなければなりません。 

C++の基本入出力はiostreamです。 Cをやったことある人はstdio.hというヘッダファイルを取りこむ(インクルードする)ことで基本入出力が出来るようになりました。 C++では、入出力はストリームという概念で抽象化されていていくつかある変数の型を出力出来るような形に整えて出力します。
出力は出力演算子 << 入力には入力演算子 >> がそれぞれ定義されています。

基本例:
#include <iostream>
using namespace std;


int main() {

  cout << "テスト" << endl;

}


 Cと同じようにiostreamをインクルードすれば使えますが、Cと違なることは名前空間があること。 名前空間とはいわば所属を指定するためのもので、Cで問題だった同じ名前の衝突を避けるためのものです。 たとえば、A組の佐藤さんとB組の佐藤さんを混同させないようにA組という名前空間を指定するようなイメージです。
名前空間はusing namespace (使う名前空間); という形で利用できます。
名前空間を指定せずに使用しようとすると入出力するためにすべてのオブジェクトにスコープ解決演算子を使わなければなりません。

using namespace を使用しない例
#include <iostream>

int main() {

  std::cout << "テスト" << std::endl;

}


書き方がいささか冗長になります。
ただし、std名前空間は入出力を含めた標準的なヘッダファイルを含む広大な名前空間のため、テスト以外は使わないのが主流の様です。



2014年6月18日水曜日

DOMのclassListを使ってみる

classListとは

classListはHTML5で追加された比較的新しいプロパティです。
リスト化されたことによりclassNameプロパティで直接操作するより簡便にクラスを変更できるようになりました。

JavaScriptでスタイルをアクティブに変更するのに便利です。

classListのメソッド

メソッド名 機能
add(class)クラスリストへクラスを追加
remove(class)クラスリストからクラスを削除
contains(class)
toggle(class)クラスリストにclassが含まれていれば削除、なければ追加
item(number)クラスリストの番号を入れることで名前を取得
lengthクラスリストの要素数

toggleを使った例




 
 
 
 classList




classList




2014年5月12日月曜日

C++でHello World

C++で最初の表示

以下のコードを入力

#include <iostream>

int main() {
  
  std::cout << "Hello World!" << std::endl;

}


書けたらファイル名を hello.cpp として保存
g++でコンパイルします。


$ g++ -o hello hello.cpp

コンパイルが無事通り、以下の表示がされたら成功です。

Hello World!

◆ 解説

最初の一行
#Include <iostream>
はディレクティブと呼ばれるもので「#ディレクティブ名」で定義します。
includeディテクティブはヘッダを読み込むものでここでは標準出力のヘッダ「iostream」を読み込んでいます
これを一番初めに書くことによって標準出力の機能を使うことが出来るのですね。





2014年5月7日水曜日

CでHello World

CでHello World

CでHello World
もっとも有名なイントロなので説明するまでもないですね。

#include <stdio.h>

int main(void) {
  
  printf("Hello World!");

  return 0;
}

2014年5月4日日曜日

CentOS 6でC/C++開発環境を整える

近年、パソコンの需要が急速に減退し、一気にスマートフォンに置き換わってきました。
ネット閲覧もパソコンからスマートフォンに主役が移ってきています。

そこでWeb周りの技術だけでなくネイティブアプリやデバイスの深い部分まで動かすにはC/C++の知識はどうしても必要になってきます。

ということでC/C++の入門から覚書まで適当に書いていきます。

使用環境:
CentOS 6.6 (Linux)

コンパイラのインストール

まず、ターミナルを開きC/C++が使える環境かどうか確認します。
$ which gcc
/usr/bin/gcc

$ which g++
/usr/bin/g++
と出ればコンパイル可能です。
無い人はyumでg++をインストールしてください
# yum install gcc gcc-c++
インストールできたら確認
$ g++ --version

g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
CentOSの標準リポジトリのものは少々古いものです。
最新のC++11に対応したい場合はgcc 4.7以上にしないといけません。

CentOSは実用を重視しているので標準で提供されているソフトウェアは安定はしていますが少々古いバージョンのものしか提供されていません。最新とは言いませんが、せめて今のトレンドが追えるバージョンをインストール出来ないかと思うユーザーも多いかと思います。

そういった要望に答えるべく開発元のRedHatはSoftware CollectionsとDeveloper Toolsetというソリューションを提供してくれました。
Software Collectionsでは開発者の要望の高かったPHPやMySQLなど比較的新しいバージョンを提供してくれます。Developer ToolsetはC、C++等開発者向けのツールが提供されています。
また/opt以下にインストールされ、新しいバージョンと古いバージョンを使い分けることが出来ます。

Developer Toolset2.0ではGCC4.8を提供してくれているのでそれを使いましょう。

# cd  /etc/yum.repos.d/
# wget http://people.centos.org/tru/devtools-2/devtools-2.repo
# yum install devtoolset-2-gcc devtoolset-2-binutils devtoolset-2-gcc-c++ devtoolset-2-gcc-gfortran

これでインストール完了。
新しいバージョンのGCCを使うには次のコマンドで変更します。

$ scl enable devtoolset-2 bash
$ g++ --version
g++ (GCC) 4.8.2 20140120 (Red Hat 4.8.2-15)
Copyright (C) 2013 Free Software Foundation, Inc.

これでCentOSでもC++11の開発が可能になります。

エディターのインストール

エディタは使い勝手のよくメジャーなEmacsを使用します。

$ which emacs

で無ければインストールしてください。

# yum -y install emacs

でバージョン確認

$ emacs --version
GNU Emacs 23.1.1
Copyright (C) 2009 Free Software Foundation, Inc.
GNU Emacs comes with ABSOLUTELY NO WARRANTY.
...........

CentOSでは最新版ではないですが最新版が欲しい場合は
ここのミラーあたりからダウンロードして自分でmakeしてください。

2013年12月31日火曜日

WindowsでのRubyのインストール

インストーラ

まず本家サイトからインストーラをダウンロードします。
本家サイト


本家サイトの「Download」のボタンをクリックするとダウンロードページに移動します。

RubyInstallersのところから自分にあったバージョンを選んで下さい。

落とした実行ファイルをクリックするとインストーラが立ち上がります。
最初に言語を選ぶダイアログが出てくるので使用したい言語を選択してください。

次に「インストール先とオプション」のダイアログからRubyをインストールしたい場所を指定し、各チェックボックスの必要なものをチェックし次に進みます。
Td/TkはGUIに関するもので、PATHの設定はどこからでもRubyを使用できるようにするものです。
関連付けは指定された拡張子が自動的にRubyとして動作する様にするものです。


「ファイル名を指定して実行」か[Windows] + [R]から「cmd」と入れてコマンドプロンプトを開きます。
コマンドプロンプトから「ruby --version」と打って自分の選んだバージョンのRubyがインストールされていたら成功です。








2011年9月22日木曜日

古いRailsをインストールしてみる

進化が早いWeb業界ではOSやライブラリを常に最新のものが使えるとは限らないので、最新バージョンを使えない場合が多々あります。
そういった中でライブラリが求めるものがインストールできない場合はいろいろコツが要るかと思います。

そんな一つで今回は、Ruby on Railsの環境をRuby version1.8.5という条件でインストールしてみた場合の覚え書きです。

Railsはgemからインストールするのでgemを先にインストールします。
gemは最新バージョンだとエラーが出たので、1.3.2をwgetでダウンロードします。
ここ
に各バージョンが用意してあるのでエラーが出ないバージョンのURLを指定してください。
今回では、1.3.2をダウンロードします。

wget http://rubyforge.org/frs/download.php/55066/rubygems-1.3.2.tgz
tar zxf rubygems-1.3.2.tgz
ruby setup.rb

でインストール完了
正しくインストール出来ると

gem -v

でバージョン確認できると思います。

次にRuby on Railsのインストールです。
Rubyのバージョンが古いので普通に

gem install rails
ERROR: could not find gem rails
locally or in a repository.

とやるとエラーが出る場合があるので、その場合はバージョン指定してやります。

gem install rails -v 2.0.1

で成功すると思います。

gem list

で正しくインストールされているか確認してください。

MySQLやSQLiteも同じです。

gem sqlite3-ruby -v 1.2.5

自分の環境にインストール出来るバージョンを指定してやればインストール出来ると思います。

もちろん環境が最新のものが利用出来るようなら古いものは利用しない方が言うまでもないです。

NBAの1試合平均チームスタッツ (2025-26レギュラーシーズン)

前回 の元となったデータ、チーム毎の各スタッツ平均です。   team games w l win% PTS AST BLK STL ...