稲枝の押入れ

いなえが適当なことを書いては、しまっておく場所

C++

C++でenumの名前を取得する

概要 表題の通りです。 enum(enum class)の名前を取得できる関数を作りました。C#のenumのToString()とかみたいな感じです。 enumかenum class以外を渡すとコンパイルエラーになるようになってる(してる)のでご注意を。 #include<iostream> #include"nameof_enum.h" en</iostream>…

VSゆるゆるTIPS

はじめに この記事はの23日目の記事として書かれたものです。 前日の記事はとっちーの です。なんか記事が間に合わないとか言ってました。計画性のない奴ですね、まったく。 ごめんなさい この記事はやる気0の状態で書かれたものです。ゆるゆるですがゆるし…

ポインタにconstをつけた時書き換え不能になる変数

超絶初歩的だが、constをつけた時のポインタの表す意味がたまにわからなくなるので自分用メモ。 int型へのポインタpは以下のように書ける int * p; この時*が型もしくは変数名についていることがあるが、それについては特に区別しない。 つまり、 [型名] * […

VSで警告レベルの変更項目が見つからない

ちょっとしたことだけど、10分位頭をひねっていたのでメモ。 状況 警告レベルを最大にしたかったのでプロジェクト作成時に設定しようとしたが、プロパティを見ても項目を見つけられなかった。 プロパティから設定するんじゃないっけ?と思いググったが、やは…

チャールズ・ケリー氏著の『入門ゲームプログラミング』を読んで

チャールズ・ケリー氏著の『入門ゲームプログラミング』を読了しました。記録として、そして他の方の参考のために感想を書いておこうかと思います。 まず、自分はこの本をDirectXの勉強のために購入しました。しかしDirectXと言っても、DirectX11や12へどう…

多倍長整数をstd::stringを使ってゴリ押し実装してみた

目次 目次 初めに 前置き 動機 多倍長整数 多倍長整数って? よくある方針 どうやったの? 実装 全体の方針 その他雑記 もう後は見ておくれ 初めに 前置き どうも、いなえのまきです。 この記事はCCS Advent Calendar 2017の6日目として書かれた記事です。 …

DXライブラリでassetionマクロを使えるようにする

C言語にはassertという関数がある。 詳細は(ここらへん)http://www.c-tipsref.com/reference/assert/assert.htmlを見たりググったりして欲しい。 これは簡単に言ってしまえばプログラマの意図を記述するのに使われる。 例えば、除算を定義する際にゼロ除算を…

変数を簡易に表示する

デバッグをする際に組み込み変数を簡単に表示したい事があると思うのだが、わざわざ毎回 int hoge = 5; printf("hoge:%d\n", hoge); みたいなのを書いてたのだけど、"hoge:%d\n"は予測補完効かないし、毎回書くのは地味に面倒だなあと思っていたのでその辺を…

変換コンストラクタについて

注意 早速本題 同じ「=」でも… 参考ページ 注意 はじめにことわっておくがこれは備忘録かつ僕の記憶の定着のための記事だ。 という事で気軽に流して欲しい(が、間違いがあれば教えていただけると大変嬉しい) 早速本題 さて、数日前まで恥ずかしながら変換コ…

DXライブラリを使って、VS2015でゲームのアイコンを変える方法

導入 こんにちは。 ふと、そういえば前々からつけるつけると言ってたゲームのアイコンをつけてなかったなあと思い、DXライブラリを暫くぶりに書いていたのですが、こちら公式情報には「VisualC++ 2005 Express Edition ~ Visual Studio Express 2013 for Wi…

__PRETTY_FUNCTION__マクロが使えない

__FUNCTION__ ちょっと気になることがあって小さい規模のコードを書いていたのだが、デバッグの時に今いる関数が表示できたら楽だなと思い、そんなマクロがあった気がするとか思いながら適当な文字列打ってたら__FUNCTION__マクロをサジェストに発見。 しか…

VisualStudioでコンソールプログラムを実行後、コンソール画面を消さない方法

調べた感じVS2010からどうも「空のプロジェクト」を作るとデフォの状態だとプログラムの実行が終わると自動でウィンドウが消えてしまう様になっているらしい。 最近はGUIの開発が多かったので知らなかったのだけれど、ちょっと試したいことがあって久々にコ…

distributionで乱数の幅を決める時、負の値が指定できない

追記: 自分のアホでミスっていただけでした。結論から言うとresultをunsigned intにしているのに気付いていないままコードを書いていただけでした…お騒がせしました… よって、この記事は情報が0に近い記事になってしまったわけですが、同じようなうっかりさ…

VisualStudio2015に後からC++を追加する

新年 経緯(飛ばしていいです) やり方 余談 新年 あけましておめでとうございます、いなえです。 全く新年感はないタイトルではありますが、今年もよろしくお願いします。 さて、さっそく本題に入りましょう。 経緯(飛ばしていいです) 僕が主にプログラミング…