Rokiのチラ裏

学生による学習のログ

2017-02-01から1ヶ月間の記事一覧

Tuple-based for loops

C++

あまり体調が良くないのだが、適度に頭を使わなくても書けるネタを見つけたのでアップロード。P0589R0にインスパイアされて、そういえば書いておくと楽だろうなと今頃思ったので自分でも書いた。tupleの展開には、いつも再起したりindex_sequence使ったりapp…

Srook range adaptor and Srook range pipe algorithm

C++

※ 2018/3/11 ライブラリ整理より当エントリ内で紹介されている一部機能は削除した。 Srook Range AdaptorとSrook Range Pipe AlgorithmはSTLアルゴリズムとその他諸々の機能をイテレータアダプタによる効率的なアクセスと、パイプライン記法をサポートさせた…

Samba + DAAPとnetdataの導入

何度かサーバーを弄っているエントリーをアップロードしてきたが、自宅には外付けの3TBHDDに動画や音楽などのメディアファイルを全て詰め込んでおり、それを今まではメイン機のデスクトップに接続して使ってきた。しかし、どうせならサーバーに接続してそこ…

パイプラインset_segregate

C++

※ 2018/3/11 ライブラリ整理より当機能は削除した。 set_segregateをパイプライン記法で。まあラップしただけ。 以下のように使う。 std::vector<int> left = boost::irange(0,9) | srook::adaptors::copied, right = boost::irange(7,19) | srook::adaptors::cop</int>…

iterator requirementsにassignableを要求される事による問題

C++

※追記 当エントリは「STLコンテナの気まぐれな実装によってiteratorをassignされる事による問題」というタイトルであったが、これは気まぐれな実装ではなく、標準の文面に規定されたルールの範囲内での話であったため、誤った解釈に基づくようなタイトルや文…

縦横比率を維持しつつ、横幅に合わせて画像を囲うボックスのheightを可変的に取る

仕事(アルバイト)でWebページを弄っている。widthとの比率が考慮されたheightを可変的に取らなければならない問題があり、cssだけでなんとかできないものかと考えていたが、思いつかなかったのでjqueryを使った話。 @530506 画像をimgタグでベタ貼りした時の…

brainf**k インタプリタジェネレータ

C++

何だか凄く早い時間に起きてしまい、特にやることもないのと、最近アニメのセリフをbrainfuckの命令語に置き換える遊びが再発しているので、ジェネレータというかライブラリとも言えぬ小さいヘッダを書く事にした。 こう使う。一応元ネタさんと同じ命令語で…

自宅ローカルサーバー(apache,motion,ping,AP)構築

前書き Amazon dash buttonなどと連携させたmotionサーバー(監視カメラ)を以前構築したわけだが、最近は更に用途が増えてきている。 例えば、最近何故だかマンション内の回線が不安定であるのでpingを飛ばしたりしている。マンション内と断定したのは、定期…

あらゆるSTLコンテナをあらゆるSTLコンテナへ一発変換する(連想配列などを除く)

C++

range adaptorライブラリを書いていて、copiedがあるのだから、集合の種類を指定できても良いだろうと思い、実装する事にした。 以下のように使える。 auto v = boost::irange(0x41,0x47) | srook::adaptors::to_range<std::vector>(); // boost::irangeと併用可能 auto l</std::vector>…

C++14までの標準規格実装に準ずる厳密なhas_iterator

C++

void_t detection idiomのエントリなどから何度か当ブログで登場している、イテレータを持つtypeであるかを判別するメタ関数has_iteratorであるが、これまでのエントリでは以下のような実装を示してきた。 template<class,class=std::void_t<>> constexpr bool has_iterator_v=std::fal</class,class=std::void_t<>…