検索結果 514 件

by Rittai_3D
9ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: ラムダ式はいらない子?
返信数: 11
閲覧数: 1054

Re: ラムダ式はいらない子?

ラムダ式は「その場でスグに関数が作れる」ところが利点だと思います。 が、「ラムダ式は本当に必要なのか?別に必要ないのでは?」と疑問を抱いている間には有用性に気がつかないものでしょう。 もっと言うと、ラムダ式を使う必要がないと思うならば使わなくても問題がないので、「あ、ここでラムダ式使うと便利だ!」ということがある時までに使わなけば有用性に気づくと思います。 実行結果 https://wandbox.org/permlink/131rlsvBgffvjyYL #include <iostream> #include <array> #include <algorithm> void show_o...
by Rittai_3D
10ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: ゲーム配布時、CSVが詰まったフォルダをなんとかしたい
返信数: 7
閲覧数: 679

Re: ゲーム配布時、CSVが詰まったフォルダをなんとかしたい

CSVファイルが入ったディレクトリをDxArchiveでまとめるのは何か問題があるんでしょうか。 どんな方法で隠蔽しようとハッカー並みの知識があれば解読できるのは承知していますが そこまでとはいいませんが、鍵もかけず情報丸出しというのもつまらないので せめて形だけでもCSVを詰めたフォルダを開けない、 鍵がかかって見れない等の処理ができればと思うのですが、、 DXArchiveみたいな気の利いたツールはありませんでしょうか? パッとは思いつきませんが、 Lhaplus 等を用いてZIP形式などでまとめてしまう(デコード部分を自分で書く必要があるかもしれません)か、自作するのが良いと思います。
by Rittai_3D
10ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: マップに格納したグラフィックハンドルを取得する方法
返信数: 4
閲覧数: 409

Re: マップに格納したグラフィックハンドルを取得する方法

オフトピック
直接関係ないですが、C++を使うのならば const char* ではなく std::string を使った方が便利だと思います。
by Rittai_3D
10ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: マップに格納したグラフィックハンドルを取得する方法
返信数: 4
閲覧数: 409

Re: マップに格納したグラフィックハンドルを取得する方法

しっかりとコードは読んでいませんが、Image::getImage() で return it->second; していないからではないでしょうか。
by Rittai_3D
1年前
フォーラム: C言語何でも質問掲示板
トピック: 龍神録プログラミングの館2について_C++基礎
返信数: 3
閲覧数: 812

Re: 龍神録プログラミングの館2について_C++基礎

1. https://cpprefjp.github.io/lang/cpp11/defaulted_and_deleted_functions.html 「default 指定子」で検索してみてください。 コンパイラがコンストラクタ/デストラクタを自動生成することを明示します。 2. 「デストラクタ」で検索してみてください。 オブジェクトが解体されるときに呼ばれます。 参考 わかりやすいように一つ余分にブロックを追加しています。 #include <iostream> class test { public: test() { std::cout << "constructor" << st...
by Rittai_3D
2年前
フォーラム: C言語何でも質問掲示板
トピック: c++ 範囲forとイテレータについて
返信数: 3
閲覧数: 786

Re: c++ 範囲forとイテレータについて

32行目が参照になっていないから代入できていないのではないでしょうか。 実行結果 #include <string> #include <iostream> #include <vector> #include <initializer_list> using namespace std; class CSign { public: int id; string sign; int value; CSign(const char* s) : sign(s) {} ~CSign() {} friend ostream& operator<<(ostream& os, const CSign& c...
by Rittai_3D
2年前
フォーラム: C言語何でも質問掲示板
トピック: クラスの宣言の仕方について
返信数: 5
閲覧数: 521

Re: クラスの宣言の仕方について

デフォルコトンストラクタを追加したら動きました。 #include <random> #include <iostream> using namespace std; class Sample{ public: Sample() = default; Sample(int rand):menber(rand){}; int getRand(); int menber; }; int Sample::getRand(){ std::random_device rand; return(rand()%100); } int main(){ Sample sampleA; sampleA=Sampl...
by Rittai_3D
2年前
フォーラム: C言語何でも質問掲示板
トピック: C++11,14のラムダ関数について
返信数: 7
閲覧数: 1050

Re: C++11,14のラムダ関数について

(1 )  Lambda関数のコード量が多い場合、 ある関数の途中にいきなりLambda関数のコードが挿入されたら、アルゴの流が悪くなりますね。 >アルゴの流 が何なのかわからないですが、この場合、個別に関数を用意すればよいのではないでしょうか。 ラムダ式は 「ラムダ式(lambda expressions)」は、簡易的な関数オブジェクトをその場で定義するための機能である。 ( http://cpprefjp.github.io/lang/cpp11/lambda_expressions.html ) とある通り、その場で関数を用意します。コード量が長いものはラムダ式にするべきではないと思い...
by Rittai_3D
2年前
フォーラム: C言語何でも質問掲示板
トピック: C++11,14のラムダ関数について
返信数: 7
閲覧数: 1050

Re: C++11,14のラムダ関数について

ただ、書かれた例文の中に下記の文の中にvecは定義済みで、 vは分かりません。 for_each( begin( vec ), end( vec ), []( int& v ) { cout << v << endl; } ); もう一度ご説明お願いできますか。 vは普通の関数でも使う仮引数です。 #include <iostream> #include <algorithm> #include <utility> #include <vector> using namespace std; void output( int& v ) { cout << v << endl; } int m...
by Rittai_3D
2年前
フォーラム: C言語何でも質問掲示板
トピック: C++11,14のラムダ関数について
返信数: 7
閲覧数: 1050

Re: C++11,14のラムダ関数について

当方C++初心者レベルなので間違えていることを言っていたら申し訳ないです。 Q1: どんな場合ラムダ関数を使うと便利になりますか。 このようなコードを書いてみると便利さがわかるかと思います。 #include <iostream> #include <algorithm> #include <utility> #include <vector> using namespace std; struct show { void operator()( int& v ) { cout << v << endl; } }; int main() { vector< int > vec { 1, 2, ...
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: Dxlibで3Dモデルを読み込むと例外が発生してソフトが強制終了する
返信数: 4
閲覧数: 883

Re: Dxlibで3Dモデルを読み込むと例外が発生してソフトが強制終了する

モデルをDxLibModelViewerで読み込んでみたところ、(32bit/64bit)ともに「動作を停止しました」ダイアログが出ました。
おそらくモデル側の問題かと思われます。

また、記載してあるコードも変数が未初期化のままインクリメントされていたり、ソースにも問題があると思います。
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: C及びにDxLibのファイル分け
返信数: 4
閲覧数: 696

Re: C及びにDxLibのファイル分け

作る人 さんが書きました:ところで、今回player.cppにplayer.hをincludeすることで解決できましたが、これはplayer.cpp自体にもかくかんすうのプロトタイプ宣言が必要
という考え方でいいのでしょうか?
player.cppに書く必要はないです。
作る人 さんが書きました:また、新・ゲームプログラムの館のd.4章ゲームの設計と分割コンパイル(2)の中のPlayer.cpp では、Player.hをincludeしていないようですが、
今回の場合とどのように異なるのでしょうか?
おそらくDixqさんの書き忘れでしょう(あくまで想像ですが)。
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: C及びにDxLibのファイル分け
返信数: 4
閲覧数: 696

Re: C及びにDxLibのファイル分け

player.cppで
#include "player.h"
してますか?
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: 画像を読み込むだけでハンドルされない例外
返信数: 9
閲覧数: 952

Re: 画像を読み込むだけでハンドルされない例外

namari さんが書きました: 関係ないんですが、このバグ修正中にうっかりコピー前のコードを一部削除してしまったんですが、
visual C++に履歴機能はないんでしょうか……一回ウィンドウを消してしまったのでctrl+Zは使えません……。
おそらく無理でしょう。 今後はバージョン管理ツールを利用するとよいかと思います。
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: 画像を読み込むだけでハンドルされない例外
返信数: 9
閲覧数: 952

Re: 画像を読み込むだけでハンドルされない例外

すいません。 コンパイラは Visual Studio 2015 Community を使用しています。 以下が実験用のコードです。 #include <DxLib.h> int WINAPI WinMain( HINSTANCE, HINSTANCE, LPSTR, int ) { ChangeWindowMode( TRUE ), DxLib_Init(), SetDrawScreen( DX_SCREEN_BACK ); int img; while( !ProcessMessage() ) { ClearDrawScreen(); img = LoadGraph( "dat/test....
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: 画像を読み込むだけでハンドルされない例外
返信数: 9
閲覧数: 952

Re: 画像を読み込むだけでハンドルされない例外

こちらの環境では再現出来ませんでした。 Windows 7 Home Premium 64bit DxLib ver 3.14f メインループで画像を読み込まないようにしたこのコードを試してみてください。 #include "../../../include/DxLib.h" //ループで必ず行う3大処理 int ProcessLoop(){ if(ProcessMessage()!=0)return -1;//プロセス処理がエラーなら-1を返す if(ClearDrawScreen()!=0)return -1;//画面クリア処理がエラーなら-1を返す return 0; } //ゲームの大...
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: 画像を読み込むだけでハンドルされない例外
返信数: 9
閲覧数: 952

Re: 画像を読み込むだけでハンドルされない例外

ざっと見た感じは問題が無いようです。
ちなみに、ProcessLoop() の中身はどうなっていますか?
オフトピック
直接関係ないですが、毎フレーム画像を読み込むのではなくて、メインループに入る前に読み込むべきです。
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: エラー詳細
返信数: 16
閲覧数: 1830

Re: エラー詳細

ノウル さんが書きました:それと、ここのサイトで、一番最初に提示したコードをC++15でコンパイルした結果、
何のエラーも出ず無事コンパイルできました。
チタンさんのコンパイラのバージョンや、古いコンパイラを使っているのが原因かもしれません、できれば更新してみたほうが良いと思います。
オフトピック
C++15って何でしょう。C++14のことなのか、MSVS 2015 のことを言っているのか。
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: 引数を内部で判断する方法
返信数: 5
閲覧数: 1303

Re: 引数を内部で判断する方法

コードを張る場合はcodeタグを使用してください。 オーバーロードを使用すれば良いのではないのでしょうか。 #include <iostream> using namespace std; class A { public: A() = default; ~A() = default; public: void func( A* a ) { ( void )a; cout << "prm : pointer" << endl; delete a; a = nullptr; } void func( A& a ) { ( void )a; cout << "prm : reference" <<...
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: 年末からC言語を始めました
返信数: 11
閲覧数: 2289

Re: 年末からC言語を始めました

初めまして。Rittai_3Dと申します。
Field Bloom さんが書きました:printfで済むような事をなぜcharでやらなければならないのか理解できません
Field Bloom さんが書きました:全ての文は何も見ないで書けるようになるまで何十回も書いて覚えて頑張ってきましたが、
この文章なのですが、意味が分からないです。何をcharでやるのか、また全ての文が何なのかが分かりません。
Field Bloom さんが書きました:charの概念が理解できません。
http://e-words.jp/w/char%E5%9E%8B.htmlここが参考になりませんか?
ちなみに、「char 意味」で調べたら2つ目に出てきました。
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: テンプレートを使ったゲーム開発
返信数: 3
閲覧数: 1011

Re: テンプレートを使ったゲーム開発

趣味でゲームプログラミングをしていますが、あまりテンプレートを使う機会はないですね(あくまで個人の感想)。 ときどき、 template< class T, std::size_t N > constexpr auto get_array_num( T (&)[ N ] ) { return N; } というような関数は使いますけど・・・。 実際に書くとしたら template< class T > struct Rect_t { T top, bottom; T left, right; // その他のコンストラクタ・オペレータのオーバーロード等を実装する }; // こうやって使う voi...
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: boostのshared_ptrについて質問
返信数: 2
閲覧数: 806

Re: boostのshared_ptrについて質問

C++11/14を使えばBoostを使わなくても問題ありません。 http://melpon.org/wandbox/permlink/UamjSFw0KzZr0R80 #include <functional> #include <thread> #include <iostream> using namespace std; class Sample { public: typedef std::shared_ptr< Sample > ptr; Sample(): x(0), y(0) { }; static ptr new_() { // ptr new_(new Sample); /...
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: ファイルのロード
返信数: 17
閲覧数: 2655

Re: ファイルのロード

1.「ヒープ用メモリの確保に失敗しました」と「音声ファイルを格納するメモリ領域の確保に失敗しました」と「Sound File Setup Error : C:\{ファイル名}.ogg{や.mp3}」について解説をお願いします! 2.上のそれぞれにおいての対策(処理)の必要の有無を教えてください! 3.もし対策が必要なら、その方法を教えてください! 「DxLib ヒープ用メモリの確保に失敗しました」と「DxLib 音声ファイルを格納するメモリ領域の確保に失敗しました」で検索すれば解決策が出る・・・と思っていて調べましたら、出てこないのですね・・・。 予想ですが、「ヒープ用メモリの確保に失敗しま...
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: 教えてください
返信数: 3
閲覧数: 589

Re: 教えてください

ソースコード #include<stdio.h> #define PLAYER_MAX (2) typedef struct { char name[21]; } PLAYER; int main(void) { PLAYER player_data[PLAYER_MAX]; int i; int player_suu; printf("%dプレーヤー数を入力してください。\n", PLAYER_MAX); scanf("%d", &player_suu); PLAYER* pt_player_data; while (player_suu > PLAYER_MAX || player_su...
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: 半角文字'%'が表示されなくなった
返信数: 7
閲覧数: 742

Re: 半角文字'%'が表示されなくなった

実験してみようと思いましたが、

コード:

WinMode
ExtendRateX
ExtendRateY
ExtendRateA
font[]
fontEx[]
DesktopSizeX
DesktopSizeY
WIN_X
WIN_Y
が分からないのでコンパイルが通りませんでした。
また、Dxライブラリのバージョンも教えてください。
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: 格納
返信数: 119
閲覧数: 19051

Re: 格納

全体のコードが無いと何行目と書かれても分からないので、全体のコードを載せてください。
ライトニング さんが書きました:int i;の宣言場所が悪いのでしょうか?
ぱっと見は問題が無いように思います。
どうしてそのように思われたのですか?
オフトピック
ブロックの省略はバグのもとですので、一行だから、と省略しないで書いた方がよいと思います。
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: 数列の作成
返信数: 19
閲覧数: 3634

Re: 数列の作成

drake さんが書きました:(1,3,5,9,20....n)のような 前の数を足し合わせた数よりおおきくなっていくような数列を作りたいのですが
どうしたら良いでしょうか?
この数列の一般項は分かりますか?
drake さんが書きました:どのような関数を使うかなやC言語でのどの部分を学ぶべきかやこのプログラミグソースを1度みるべきなど何かアドバイスをお願いします。
ピンポイントな関数もサンプルコードも存在しないものだと思ってください。基本的には自分で作るものです。
強いて言うなら数学の勉強をした方がよいと思います。
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: データメンバのクラスをpublicで持ってもいいのでしょうか?
返信数: 6
閲覧数: 454

Re: データメンバのクラスをpublicで持ってもいいのでしょうか?

cout << tama.name.getName() << endl;    //  CatのnameをpublicにすればOKだけど。。。 これ、ぱっと見た時に違和感を感じませんか?個人的には"name.getName()"でnameが被っているのが気になります。 tama.getName(); で十分意味が通りますし。 Name name;  //  has_a   Nameクラスの責任はNameクラスが負うのでPublicでも問題ないのでしょうか? よくないと思います。 例えば、 // いろいろ省略 int main() { Cat tama( "たま" ); tama.name =...
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: データメンバのクラスをpublicで持ってもいいのでしょうか?
返信数: 6
閲覧数: 454

Re: データメンバのクラスをpublicで持ってもいいのでしょうか?

哺乳類クラスや動物クラスがnameを持つことが ピンときませんでした。 動物などの抽象的なものが具体的な名前を持つのが不自然、ということでしょうか。 でしたら、nameという具体的なものを動物クラスで持たせず、派生先で持たせて、親クラスに具体的なものを扱う為の仮想関数を書いておけばよいのではないでしょうか。 class Animal { public: /* コンストラクタ・デストラクタは省略 */ virtual void SetName( const std::string& name ) = 0; virtual std::string GetName() const = 0; }; ...
by Rittai_3D
3年前
フォーラム: C言語何でも質問掲示板
トピック: DrawFormatStringToHandle関数を拡張(?)したい
返信数: 8
閲覧数: 862

Re: DrawFormatStringToHandle関数を拡張(?)したい

分かりやすそうなサイトがありましたので、 http://wisdom.sakura.ne.jp/programming/c/c62.html からva_start と va_end の解説を引用します。 void va_start(va_list リスト , prev); リストには、引数リストへのポインタを指定します これは、可変個の引数の情報を保持するための stdarg.h で定義されている標準型です pervは、最初の可変個数の手前の固定引数を指定します(最後の固定引数) この時点で va_list 型の変数に、可変引数の情報が格納されます 次に、この va_list 型変数から、順に...

詳細検索ページへ移動する