プログラミング

C++_ std::setprecision と std::fixed ( 桁数指定 )

桁数指定の時に使用するが、分からないまま使用しているので調べた。ほぼコペ。 ※ #include <iomanip> が必要。 std::setprecision 浮動小数点数を出力する精度を設定するマニピュレータ。 マニピュレータ:ストリームに対して、何らかの操作を行うオブジェクト。スト</iomanip>…

C#_PictureBox のサイズを Image に合わせる

つまらんところでハマった。けどメモしとく。 Form → Panle → PictureBox と設置している場合。 Form 、Panel の両方とも AutoSize プロパティを True に設定。 PictureBox は Dock プロパティを Fill に設定。 これで Form のサイズが image に合う。 以上。

C#_List から特定の文字を含むものを除外

ex ) fuga が入っているファイル名以外を List に格納。 List<string> allFile = Directory.GetFiles(@"C:\Hoge\", "*.txt",SearchOption.TopDirectoryOnly).ToList(); string fuga = "fuga"; List<string> getFile = allFile.Where(file => !file.Contains(fuga)).ToList();</string></string>…

C#_匿名関数とは

経緯M(int value) => X = value; が匿名関数だと思ってた。違かったので調べた。匿名関数=ラムダ式と捉えてよい感じ。 C# 2.0 では匿名メソッド式、C# 3.0 ではラムダ式という構文がある。これらを合わせて匿名関数と呼ぶ。 ラムダ式は匿名メソッド式の上位…

C#_テキストボックスのイベント一覧 ( M ~ V )

続き。コントロールと記載してあるのはテキストボックスのことだが、他のボタンやラベルでも同様のイベントあるだろうから、コントロールと記述。 名前 説明 MarginChanged コントロールのマージンが変更された時に発生。 Margin:他のコントロールとの間の…

C#_テキストボックスのイベント一覧 ( A ~ L )

テキストボックスのイベント一覧を取りあえず把握。他のイベントを知っていれば容易にコードかけた時あったので。 名前 説明 AcceptsTabChanged AcceptsTab プロパティの値が変更された時に発生。 AcceptsTab:Tab キーが押下された時に、次のコントロールへ…

C#_exe ファイルにドロップされたファイルのパスを取得

実行ファイルだけでなく、ショートカットにドロップしたファイルパスも取得可。img ファイルならパス取得後に pictureBox に img を表示したり。 ex ) ドロップしたファイル名のフルパスが表示される。 string[ ] files =Environment.GetCommandLineArgs(); …

C#_Dictionary の使い方

PHP の連想配列にあたるコレクションかと。添え字は通常数値だが、連想配列では好きな名前にできる。 添え字と値をセットで操作したい時は KeyValuePair を使う。 ex ) Dictionary の操作。string が key で Point が value。ソースは所々省略。 Dictionary<string, Point> </string,>…

C#_正規表現における「\」と「"」

「ファイル名に次の文字は使えません」の実装で意外とハマった。 結論から @ を用いた場合、「 " 」を指定したいなら「 "" 」と指定。 テキストボックスで入力した「 \ 」や「 " 」は「 \\ 」「 \" 」とエスケープされて送られてくる。 ※ using System.Text.…

C#_特定のキーを押下したら処理を走らせる

※ KeyDown イベントはビューデザイナーのプロパティから設置済み。 ex ) A キーを押下した場合、処理 X が走る private void Form_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode != Keys.A) { return; } //処理 X } こちらから。 https://dobon.n…

C++_Enter キーを押下したら処理が続行

Enter キー を押すまでは待機状態にしたい。 getchar ( ) を書くだけ。 // 処理 1 getchar(); // ここで入力待ち // 処理 2 Enter キーが押下されたら処理 2 が走る getchar() はその名通り文字を受け取る関数。Enter ( 改行 ) が押されて初めて入力した文字…

C++_ファイル入出力の基本 ( 出力 )

出力ファイルストリーム ( 書き込み ) について。 std::ofstream でファイルへ出力。 #include <fstream> が必要。 std::ofstream ofs( "./ファイル名" ); if ( ! ofs ) { // ファイルオープン失敗時の処理 } ofs << "Hey" << std::endl; 指定したファイルに Hey が書</fstream>…

C++_ファイル入出力 ( 入力 ) >> 演算子使用

ファイル読込み。getline( ) を使わないコード。 #include <fstream> 必要。 ex ) 読みやすいように半角スペース入れて箇所あり。 std::ifstream fS( "./hoge/text.txt"); if( ! fS ) { return; } int a, b; while ( ! ifsT.eof() ) { fs >> a >> b; } デリミタがスペ</fstream>…

C#_カーソルを砂時計にする ( 待機状態にする )

アプリが計算中の時、操作不可能に。and 処理が長いと終わったのかどうか分からないので。※ Win 10 では円が回っている状態。 // 元のカーソルを保持 Cursor preCursor = Cursor.Current; // カーソルを待機カーソルに変更 Cursor.Current = Cursors.WaitCur…

C#_ファイルパスからフォルダ名取得したり など

前提:openFileDialog ツールは設置済み ※ using System.IO; 文頭に記述。 ファイルパス取得 string path = openFileDialog.FileName; (フルパス取得。もちろんファイル名 + 拡張子あり) ex ) C:\HogeH\FugaF\aaa.txt ファイルを複数選択可にし、取得 openF…

C#_プロパティの自動実装機能(自動実装プロパティ)

getter / setter ( アクセサ― ) の簡略記述。 C# 3.0 から実装された。( 糖衣構文 )get / set する以外処理ない時は 自動実装プロパティの方が記述が楽。 public int HogeData { get; set; } HogeData プロパティ自体に値が保持される。なお、 set のみだと…

C#_ 1 行のみの関数 ( expression-bodied ) =>

関数メンバーの関数本体の部分が 1 つの式だけからなる場合に=> を使った簡易文法で関数定義できる。 expression-bodied 関数メンバという。本体が式・式形式。 C# 5.0 以前 public int Hoge ( int x ) { return x * 100; } C# 6 以降 public int Hoge ( int…

C#_DialogResult.OK をキャンセルしたい

※ コントロールのボタンは、DialogResult で OK と設定。 経緯 OK ボタンを押しても、処理が正常に完了などしなかったならばDialogResult.OK を押したことにしたくない ( Form を閉じたくない )。 Form1 if ( form2.ShowDialog() != DialogResult.OK ) { For…

C++/CLI_#pragma once とは

前 C++/CLI のカテゴリー作ろうと思ったら登録できなかったのに今できるし。編集するのめんどくさいんだよ…。 ソースファイルをコンパイルする際、ファイルが 1 回だけ取りこまれるようにする。 #include guard と同様の効果。 ( プリプロセッサのマクロ定義…

C#_ 「 || 」 と 「 | 」

PHP の型まで判定する === ( 比較演算子 ) 的なものなのかと混乱した。 条件 OR 演算子 と 論理 OR 演算子 という。 || ( 条件 OR 演算子 ) if でよく使う条件の OR。 x || y x が true の場合、 y は評価されない。 | ( 論理 OR 演算子 ) ビットごとの OR …

C++/CLI_ C# との間で List の受け渡し

ex ) List は int 配列 C# List<int[ ]> get = Native.Test.Hoge(pictureBox.Image as Bitmap);// var get でも ok C++/CLI namespace Native{ public ref class Test { public: static System::Collections::Generic::List<array <int>^ >^ Hoge() { auto list = gcnew System::</array></int[>…

C++/CLI_ C# の List 要素を追加する

C++/CLI で、C# の List を扱った時、要素追加が出来ずに時間をくってしまった。 C# では list.Add(x) だが、 C++/CLI では list->Add(x) 。 ex ) auto list = gcnew System::Collections::Generic::List<array<int> ^ >(); array<int> ^ a = gcnew array<int>(2); a[0] = 10; a[1</int></int></array<int>…

C++_小数点桁数を指定して、stringに変換

sprintf を使う。 ex ) double num = 112.14328; char str[20]; std::sprintf(str, "%.2f", num); コンソールに出力する場合は、 printf("%.2f", num); str は、112.14 となる。num が11.14328 の場合は 11.14 となる。 sprintf の引数 int sprintf( char *s…

C#_アセンブリとは

実行ファイルパス取得コードにて、アセンブリという言葉が出てきて意味が分からなかったので。 Microsoft .NETにおけるコード管理の基本単位となるコンパイル済みの実行コードをアセンブリという。 .NET標準の共通中間言語 ( CIL ) で記述されたライブラリ形…

C#_ インターフェース とは

定義だけを記したもの。宣言のみ? interface:抽象メソッドのみを持つ抽象クラスのようなもの。 クラスが実装すべき規約を定めるもの。クラス設計者とクラス利用者との仲介役を担う。 規約:ここでは、どういうメソッドにどういう引数を渡すかなど。 抽象メ…

C#_値型につける readonly

クラス ( 参照型 ) とは対照的に、構造体 ( 値型 ) の場合はデータを直接持つ。故に、readonly を付けると構造体の中身も読み取り専用になる。 但し、メソッドの呼び出しなどを行う際、コピーが発生するという別の注意が必要。※メソッドを呼び出す際、常にコ…

C#_ 参照型につける readonly

readonly は再帰的には働かない。 readonly を付けた場所だけが読み取り専用になり、参照先などについては書き換えが可能。 ex ) class MutableClass { // フィールドを直接公開 public int X; // 書き換え可能なプロパティ public int Y { get; set; } // …

C#_ const と readonly の違い

読み取り専用とだけしか知らなかった。 const readonly ローカル変数にも使える。 クラスのメンバー変数のみ。 変数のように扱える定数。 読み取り専用の代入不可な変数。 常に静的変数と同じ扱い ( 暗黙的 static )。 static の有無を変えられる。 宣言時に…

C#_ enum ( 列挙型 ) とは

enum キーワードは、列挙型を宣言する為に使用。 列挙型:特定の値しかとらないようなものに対して使う型。例えば曜日、月、性別、年号などなど。 書き方 enum Hoge // 列挙型名 { hogege // メンバー名 ,fugaga ,piyopiyo } 利用する時 Console.Write ( Hog…

VisualStudio_エラー個所へ飛ぶショートカット

多分、VisualStudio 全般で使えるはず。C# でしか確認してないが。 Ctrl + Shift + F12 こちらから。 https://qiita.com/kengop/items/ac9b57404d30e0cfdd20 以上。