msty開発メモ

技術ネタを綴ります

【C++】プライベートなコンストラクタを持つクラスをmake_uniqueする方法

クラス外ではインスタンス化されちゃあ困るけど、クラス内でインスタンス化したいとき。 普通にnew XXXってするとうまくいくんだけど、C++だとスマートポインタに置き換えたいよねってことで、std::make_uniqueとか使うよね。 つまりこう書きたい エラーにな…

【C++】簡単なvectorテクニック

メモ書きです。 std::remove_if 削除する項目を判断する関数を与えて、指定した要素を削除します。これを読んだだけでは要素数は変化しません 削除すべき要素が末尾に集中するので、eraseメソッドでの処理が高速化できます C++ Vector std::remove_if クラス…

【C++】Zeromemoryは楽だが理解しないと危険

Zeromemoryマクロで少し面倒なことになったのでメモ。 ZeroMemoryマクロ、まあmemsetでもいいですが、指定した変数の中身を0クリアしてくれる使いやすいマクロです。 けど使い方を間違えると実行時エラーのもととなります。 以下のソースを動かしてみます。 …

【C++】演算子のオーバーロードの使い方(基礎)

演算子のオーバーロードについてかる~くゆる~く触れようと思います。 演算子のオーバーロードはクラスに対する拡張です。といっても私ならそれだけ言われてもわからないので実際に演算子のオーバーロードを使用するクラスを一緒に作っていきましょう。 基…

【プログラミング】処理落ちに対応する考え方

実装されててアタリマエのことですが、されていないフリーゲームもちらほら見るので考え方とC言語でのサンプルだけちょっと紹介。 処理落ちに対応するには実に簡単で、小学校で習った「距離=速さ×時間」を使います。この"時間"の部分ですが、ゲームであれば…

【Android Studio】ほんとの0からカスタムビューを作成するよ

0カラってどこから? A. プロジェクトの作成から 何言ってんだお前って言わないように。 タイトル詐欺って言わないように、ちゃんとやります。 勉強したはいいけど、実際に1から作るとしたらどうしていいかわからない人向けです。 知らない用語は調べてね。…

【C++発展途上者向け】ゲッターとセッターは実装すべき?

ゲッターとセッターをどうやって実装するかという面白い問題を見つけたので個人的な考え方でも書いておきます ゲッターはほとんど実装しない 私はほとんどゲッターを実装しません。 といっても面倒くさい時はカプセル化も何もしないんですけどね(笑)ただガッ…

【Androidプログラミング】タッチ処理でACTION_DOWNしか発生しない時の解決方法

意外とハマる人が多そうな気もするのでメモ書き。Android Studioで開発していると、インテリセンス機能を使ってメソッドを挿入することが多いと思う。例えばタッチイベントを処理するメソッド"onTouchEvent"を挿入するとこんな感じのソースが挿入される @Ove…

【AndroidStudio】画面の向きを固定する

AndroidManifest.xmlを開く。 ソースコードを直接いじる形で開いてね。 その中にactivityタグがあるので、以下の属性を追加する android:screenOrientation="portrait" この属性は画面の回転をどうするかを設定する属性で主に使う値は以下の3つ 値 意味 port…

【Go】mapからキーを削除する方法

Go

参考書どおりに書いたら動かなかったのでメモこの問題に詰まってここに来た人はこんな感じのコードを書いたんじゃないでしょうか package main import "fmt" func main(){ m:=make(map[string]int) m["id"]=100 fmt.Printf("%v\n",m) //idを消す m["id"]=0,f…

Android Studio2.x 上部バーとタイトルの両方を消す方法

AppCompatActivityってなんでしょう。 いつもActivityに書き換えてます。 フルスクリーン化をしてみる 不完全なフルスクリーン化をしてみます。 プロジェクトは「Empty Activity」と仮定 package com.example.msty.drawsample1; import android.support.v7.a…

Android Studio2.xでタイトルバーを非表示にする方法

ゲーム作るために非表示にする必要があったのでメモ書き Android Studio2.xではプロジェクトを作成した直後はタイトルバーが表示される。じゃあ早速タイトルバーを消していこう今回サンプルで使用しているのは「Empty Activity」 理由はシンプルで何もないか…

Windows10にRuby on Rails環境を構築する

過去に少し苦戦したのでメモ Rubyのインストール http://rubyinstaller.org/downloadsからRuby2.1.xをインストール ※2.2.xではWindowsだと環境が作れなかったので必ず2.1系にする同ページにあるDEVELOPMENT KITもダウンロード&解凍。 この際32bit/64bitどち…