さよなら備忘録

「なにをいまさら」と言われそうな些細なことのメモがわり

2014-01-01から1年間の記事一覧

enum class を範囲for文でループさせる

C++

C++11で導入された enum class を static_cast で整数型にキャストしてむりくりfor文でループさせてるコードを見かけました。軽く調べたところ begin(), end(), operator*(), operator++()を定義すれば範囲for文で使えるようになるようです。 #include <iostream> usin</iostream>…

『初めてのRuby』読了

趣味でRubyを触ろうと思い、参考書として購入しました。初めてのRuby作者: Yugui出版社/メーカー: オライリージャパン発売日: 2008/06/26メディア: 大型本購入: 27人 クリック: 644回この商品を含むブログ (251件) を見るRubyの基礎の基礎といえる文法などの…

Windows で Git のプロキシ設定をする

Git

HOMEディレクトリ(だいたいの場合は C:\Users\《ユーザー名》 )に .gitconfig を作成し、プロキシサーバーのアドレスとポートは環境にあわせて設定する。コマンドでやる方法もあるようだが今回は割愛。.gitconfig [http] proxy=http://《address》:《port…

Boostライブラリで文字列から半角・全角スペースを削除する

C++

Boost String Algorithms ライブラリを使って指定した文字を削除する。 サンプルは視認しやすくするため、全角スペースをアンダースコアに置換しています。 #include <iostream> #include <boost/algorithm/string.hpp> using namespace std; using namespace boost; int main() { string s1 = " _</boost/algorithm/string.hpp></iostream>…

Boostライブラリでbase64へのコンバートとデコード

C++

エンコード結果を標準出力にコピーする。 #include <iostream> #include <sstream> #include <boost/archive/iterators/binary_from_base64.hpp> #include <boost/archive/iterators/base64_from_binary.hpp> #include <boost/archive/iterators/transform_width.hpp> using namespace std; using namespace boost::archive::iterators; using …</boost/archive/iterators/transform_width.hpp></boost/archive/iterators/base64_from_binary.hpp></boost/archive/iterators/binary_from_base64.hpp></sstream></iostream>

Windowsで時刻を手動変更したときのC++への影響

C++

結論から書くとどうしてこうなるのか全くわかってません。 各仕様や実装の誤解が多分にあると思われるのでご注意下さい。 Windows環境で時刻を手動で変更したときにC++の時間関連のプログラムにどう影響があるかコードを動かしてみました。 検証方法は単純に…

コマンドプロンプトで環境変数の設定

いつも忘れるのでメモ。 set XXX=xxx echo %XXX%既存の環境変数に追加する場合。 set XXX=xxx;%XXX%削除する場合。 set XXX=

oninputイベントで文字の変化を監視する

HTMLで入力ボックスに入力された文字列が空白だった場合は決定ボタンを無効化する場合などに。 IME有効時やペーストでも反応するので onkeypress などの類似イベントより正確に判定できると思う。 var input = document.createElement('input'); input.oninp…

ローカルのVimプラグインをNeoBundleで使う

Vim

Gitで外部レポジトリに対するアクセスが制限されている環境でNeoBundleを使う。 使用したいプラグインをダウンロードし適当なディレクトリに展開して neobundle#local() にそのディレクトリを指定する。.vimrc call neobundle#begin(expand('~/.vim/bundle')…

Bitbucket で Gist ようにコードを表示

以下のような感じのファイルを wiki に追加する。 レポジトリをつくるほどでもない簡単なサンプルを管理するのはいいかも。 そもそも Gist を使えばいい気もしますが。main.cpp {{{ #!cpp #include <iostream> int main() { std::cout << "Hello, World!" << std::endl</iostream>…

localhost と 127.0.0.1

IE10,IE11でちょっと躓いたのでメモ。 ローカルHTTPサーバーを立てて、http://127.0.0.1:ポート番号/ にアクセスし、XHR で URL に localhost を指定すると open() でエラーになる。 IE はローカルアクセスでも URL の指定方法が違うとクロスドメインと判定…

テスト

テスト