Nagarei

Results 117 comments of Nagarei

> DxLibで点って描画できましたっけ [DrawPixel](http://homepage2.nifty.com/natupaji/DxLib/function/dxfunc_graph0.html#R2N5) > 任意の図形の組み合わせ `std::vector`みたいな物をメンバに持つようにすれば、作るのはそこまで難しくないと思います。

> 任意の図形の組み合わせ 少し考えてみましたが、描画の高速化とかは難しいと思います。確かに有難みは薄いですが、図形の組み合わせも一つの図形とみなせるという点で有用だと思います。

> 組み合わせを実装するとすると、std::tupleみたいな感じの実装になるんですかね なるほど。そちらの方がユーザーに優しい気がします。 > dxle::screenを内部に持って置く なるほど。screenは重いので悩みどころですが...。そちらの方が良いと思います。

幅限定なら、ios_baseのメンバ関数widthの引数なしのオーバーロードで取得できます。 なので2は ``` cpp auto w = os.width(); os

考えてみたのですが、数字の桁数が変わるので、やや面倒ですね...。 一応flagsメンバ関数やprecisionメンバ関数(の引数なしのオーバーロード)で取得できそうですが、 数字の桁数に関係するフラグ - boolalpha - dec - fixed - hex - oct - scientific - showbase - showpoint - showpos 数字の桁数に関係するその他の設定 - precision とかなりいろいろ考慮しないといけないので少し大変です。 一応 ``` cpp std::string_stream ss;...

> DxLibって自己解凍exeで配布なんだよな・・・、Cl上で解凍できるのかな 7zipのコマンドラインを使えば恐らく可能かと。

上のを参考にしながら0オーバーヘッドの物を作ってみます。 というか0オーバーヘッドを保ちながら下のを改良してます。 無効化フラグはつけません。 ``` cpp template struct scope_exit { scope_exit(F&& param) : f(std::forward(param)) {} scope_exit(const scope_exit&) = delete; scope_exit& operator=(const scope_exit&) = delete; ~scope_exit() { f(); } private: typename std::remove_reference::type...

上の実装だと下のサンプルのように`auto&&`を使う必要があるのが問題です。(`auto`のみだとエラーになる) 仕様で良いですかね? ``` cpp struct Test { int num; Test():num(0){} Test(const Test& other) :num(other.num+1) {} void operator()() { std::cout

はじめは僕もそう思ったのですが、それだと0オーバーヘッドで実現できないのではないかと思ったのでp0052r0はいったん無視しました。 0オーバーヘッドにこだわるのは...僕の癖です。 僕の場合は今の実装のDrawnOn関数の`Finally_`みたいにすれば簡単に0オーバーヘッド(たぶん)で実行できるものをわざわざオーバーヘッドを負ってまで使おうとは思わないです。 なので、多少機能を絞ってでも0オーバーヘッドにしたいです。 ここまで書いて思ったけれど、p0052r0に合わせたものを別に作れば良いのか...。しかしそうすると似たような機能を持つものが二つできてしまう...。 翻訳ありがたいです。英語も読めなくはないのですが、どうにも時間と気力ばかり奪われていくんですよ...。 確かに急ぎではないので、ゆっくり行きましょう。

> どの辺がオーバーヘッドになると考えていますか? 実装してみると「関数呼び出しを実際に行うか」というフラグがないと、ムーブができないのでその段階であきらめました。 よく考えると、たかがbool変数一個ですね...。