検索結果 939 件

by YuO
5年前
フォーラム: C言語何でも質問掲示板
トピック: フォルダー上のファイルからデータを読み込む速度について
返信数: 16
閲覧数: 2165

Re: フォルダー上のファイルからデータを読み込む速度について

reallocの使い方,まずいですね。
reallocの戻り値を,reallocに渡した変数と同じ変数で受けてはいけません。以下はダメな例です。

コード:

p = realloc(p, size);
reallocはメモリの確保に失敗した場合,メモリを解放せずにNULLを返すため,メモリがリークします。

コード:

p2 = realloc(p, size);
if (p2 == 0)
{
    /* メモリ確保失敗時の処理 */
}
else
{
    p = p2;
}
のようなコードにする必要があります。

というか,C++ならstd::vectorという便利な物が……。
by YuO
5年前
フォーラム: C言語何でも質問掲示板
トピック: ID重複を調べる仕組みとは?
返信数: 5
閲覧数: 1254

Re: ID重複を調べる仕組みとは?

ユーザーは通常RDBMSで管理されています。 なので, CREATE TABLE user ( internal_id INT NOT NULL UNIQUE, login_id VARCHAR(64) NOT NULL UNIQUE, password_hash VARCHAR(255) NOT NULL, user_name VARCHAR(64) NOT NULL UNIQUE, PRIMARY KEY ( internal_id ) ) のようなテーブルを用意して, SELECT COUNT(*) FROM user WHERE login_id=:login_id のようなSQLを発...
by YuO
5年前
フォーラム: C言語何でも質問掲示板
トピック: フォルダー上のファイルからデータを読み込む速度について
返信数: 16
閲覧数: 2165

Re: フォルダー上のファイルからデータを読み込む速度について

64bit環境で64bit版としてコンパイルすれば,4GiB以上のメモリを利用することはできます。 ただし,staticな変数の2GiB制限は依然として存在する (char c[0x100000000LL];とか平然と通す割りにsizeof(c)が0になる……) ほか, スタックのサイズも1MiBから変わっていないため,mallocする必要がありますが。 ちなみに, #include <stdio.h> #include <stdlib.h> #include <stddef.h> int main(void) { void * p1 = 0; size_t size; for (size =...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: フォルダの中にあるpngファイルの数と名前を取得したい
返信数: 6
閲覧数: 3020

Re: フォルダの中にあるpngファイルの数と名前を取得したい

すでにDixq (管理人)さんが FindFirstFile と FindNextFile を紹介されているので,ディレクトリ下のファイルについては省略します。 Windowsでのフォルダとディレクトリの違いは説明見てもよく分かりませんでした。 ディレクトリは完全に物理的に存在する物です。 それに対して,フォルダーはディレクトリを含みますが,物理的に存在しない,例えば「ネットワーク」フォルダ ( FOLDERID_NetworkFolder , CSIDL_NETWORK ) も含みます。 ZIPやCABもフォルダーとなります。 エクスプローラーで表示される階層構造に含まれる物は,だいたいフォ...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: dllの呼び出し
返信数: 4
閲覧数: 1845

Re: dllの呼び出し

64bit Windows上で32bitのアプリケーションは,WOW64という32bit Windows環境を模した環境で32bitアプリケーションとして動作します。 このWOW64の存在は,通常気にする必要のないものです。 なので,64bit Windowsの上では,64bitアプリケーションも32bitアプリケーションも区別無く,そのプラットフォームで実行しているかのように実行できます。 例外的に,.NET Frameworkのアプリケーションで対象がAnyCPUの場合のみ,32bit Windowsでは32bitアプリケーションとして,64bit Windowsでは64bitアプリケーシ...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: dllの呼び出し
返信数: 4
閲覧数: 1845

Re: dllの呼び出し

  • 32bit DLLを32bit Processから呼び出すことはできます。
  • 32bit DLLを64bit Processから呼び出すことはできません。
  • 64bit DLLを32bit Processから呼び出すことはできません。
  • 64bit DLLを64bit Processから呼び出すことはできます。
ProcessのプラットフォームとDLLの対象プラットフォームの関係は,上記のようになります。
その.exe/.dllがどのようなコンパイラで作られたかは関係しません。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: フォルダの中にあるpngファイルの数と名前を取得したい
返信数: 6
閲覧数: 3020

Re: フォルダの中にあるpngファイルの数と名前を取得したい

OS等,どのような環境でしょうか。
また,「フォルダ」であって「ディレクトリ」ではないのですね。
オフトピック
フォルダとディレクトリは別物であることがあるので (e.g. Windows)。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: php ログイン機能
返信数: 5
閲覧数: 3291

Re: php ログイン機能

サンプルが出てくるんですがPHPのみが多くすこしわかりにくいです sqlのデータを読み取り、入力されたID・PASSと比較する方法がわかりません とのことなので,認証とPHPとRDBMSが関わる基本的な部分について。 まず,ユーザーテーブルの例。サンプルなので非常にシンプルな構成にしておきます。 CREATE TABLE user_table ( user_id INT NOT NULL, login_id VARCHAR(32) NOT NULL, password_hash VARCHAR(255) NOT NULL, PRIMARY KEY ( user_id ), UNIQUE ( ...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: どなたか
返信数: 9
閲覧数: 1638

Re: どなたか

SQL Studio だと,MS SQL Server専用のようですね。 やはり,こちらもRDBMSではないですが……。 RDBMSの有名どころは, Oracle Database : INSERT Microsoft SQL Server : INSERT (Transact-SQL) DB2 : IBM Knowledge Center - INSERT MySQL : MySQL :: MySQL 5.6 Reference Manual :: 13.2.5 INSERT Syntax PostgreSQL : PostgreSQL : Documentation: 9.3: INSE...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: クラスのメンバ変数を参照時に更新させたい
返信数: 10
閲覧数: 1920

Re: クラスのメンバ変数を参照時に更新させたい

C#などではプロパティと呼ばれる機能に相当しますね。 VC++限定なら, declspec(property) を使って擬似的に行うことができます。 で,調べてみると C++ Properties -- a Library Solution という,2004年4月9日に出されている,C++でプロパティをライブラリとして実現する為のpaperが見つかります。 現状でどういう扱いになっているのかはわかりませんが。 # N1384, N1600あたりと共に扱われているようですが…… http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2009/n28...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: IP認証を入れたいのですが・・・
返信数: 19
閲覧数: 2476

Re: IP認証を入れたいのですが・・・

WebClient()の仕様では? HttpClient()じゃないので。 うーん,普通にWebClientで取得できるのですけどね……。 Fiddlerで見ても普通に繋げていますし。 はい、おっしゃる通りだと思います。 しかし、その認証方法(ローカルIP)にするにしてもサーバーとの認証を行わないといけないのでサーバーからデーターを取得する必要があります。 認証自体はサーバー側にやらせればいいと思いますよ。 認可の情報もサーバーから送ればよいですし。 .NET FrameworkにはDiffie-Hellman鍵交換はないですが楕円曲線Diffie-Hellman鍵交換 (ECDH) があり...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: C# Wordの数式エディタのAlignParagraphCenterが設定出来ない
返信数: 2
閲覧数: 769

Re: C# Wordの数式エディタのAlignParagraphCenterが設定出来ない

Word 2013ですが,数式を挿入したあと,「数式を両端揃えする」マクロを生成してみたところ,

コード:

Sub Macro1()
'
' Macro1 Macro
'
'
    Selection.OMaths(1).ParentOMath.Justification = wdOMathJcCenterGroup
End Sub
と出力されました。

VSTOであっても,やっていることは同じなので,OMathオブジェクトのJustificationプロパティ値を変更することで対処できないでしょうか。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: C++のコンストラクタとデストラクタ
返信数: 6
閲覧数: 2511

Re: C++のコンストラクタとデストラクタ

解決となっているけれども,誰も例外安全について書いていないので……。 C++を使う以上例外から離れることはできません。 終了処理を別関数にしてしまうと,C++にはfinallyがないので,そこかしこにtry - catch書いて,catchの中と外に終了処理関数の呼び出しを書くことになってしまいます。 なので,終了処理が必要なのであれば,私はデストラクタを使います。 本物の C++er はデストラクタを書かない - 野良C++erの雑記帳 なんてのもありますが,これもRAIIの話なので終了処理関数ではなかったりします。 例外安全のために,デストラクタでの終了処理をさらに小さなクラスに委譲する,...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 数値型変数のC言語とC#のnullチェックについて
返信数: 3
閲覧数: 1622

Re: 数値型変数のC言語とC#のnullチェックについて

Cコードでは数値型引数sign、dm_dに対して nullチェックを行っているので C#でも同様にnullチェックを行おうと思ったらエラーとなりました。 そもそも数値型引数に対してnullチェックは必要?と思いましたが、 何かチェック方法がございましたらご教授願います。 チェックは不要です。 outは呼び出し側でオブジェクトへの参照を用意する必要がありますが,それは強制され,コンパイル時にチェックされています。 これは値型でも参照型でも同じです。 参照型をoutにするというのは, void func (struct class_type ** obj_ref); のようなコードに相当し,ob...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: visual Studioのデザイナ使用でメインのフォームクラスの分割
返信数: 2
閲覧数: 642

Re: visual Studioのデザイナ使用でメインのフォームクラスの分割

コントロールが多くなる場合,基本的にはPanelではなくユーザーコントロールを使います。 Formの上にTableLayoutPanel貼って,そこに作成したユーザーコントロールを配置していくのがWinFormsでのプログラムの基本です。 で,ユーザーコントロールが自身が保持するコントロール以外を操作する必要があるのであれば,そもそもコントロールの配置が間違っている,と考えた方がよいです。 ユーザーコントロールに実装したイベントをその親が拾って,別のコントロールのプロパティを設定する,などによって,ちゃんと分離ができるはずです。 さらに書くなら,Modelを用意して,状態をコントロールではなく...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: android開発
返信数: 12
閲覧数: 869

Re: android開発

確かにフマフォはJAVAが一般的のようですね。 SmartPhone開発において,特定の言語が一般的と言うことはないです。 AndroidやBlackBerryであればJava言語が一般的でしょうけれども, iPhoneであればObjective-Cが,Windows PhoneであればC#やVisual Basicが, TizenやFirefox OSであればHTML + JavaScriptが一般的な開発言語だと思います。 C++での開発もできない事はないという感じを見ると環境や資料の面で必要なものが揃わないという事もありそうな気はします。 一般に,Androidでの開発であれば,Jav...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: Sql Server Compactで画面から入力された検索条件を利用する方法
返信数: 11
閲覧数: 1871

Re: Sql Server Compactで画面から入力された検索条件を利用する方法

先にクエリを作っておかなくても、あとでクエリを追加できるようなコマンドということでしょうか? お恥ずかしながら提示してくださったものの理解がまだできていません。 まず,IDbCommand (SqlCommand, SqlCeCommand, etc.) を使えば,アドホッククエリを実行できます。 TableAdapterのSelectCommand等で使っているのも,実際にはIDbCommandです。 で,IDbCommandのExecuteReaderを使ってIDataReaderを得てそこから値を取得するのがADO.NETの基礎です。 通常はReadメソッドで一行ずつ読んでいくのですが...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: Sql Server Compactで画面から入力された検索条件を利用する方法
返信数: 11
閲覧数: 1871

Re: Sql Server Compactで画面から入力された検索条件を利用する方法

解決となっていますが……。

テーブルアダプタに最初からクエリを用意しておくのは,そのクエリが確定している場合などには使えますが,検索条件が変わるようなときには向きません。
条件によってクエリを動的に生成し,SqlCeCommandを直接使って結果をDataSetに流し込めばよいと思いますが……。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: いまさら WPF (Windows Presentation Foundation)
返信数: 3
閲覧数: 652

Re: いまさら WPF (Windows Presentation Foundation)

CTPしかなかったVS2005の時代ではあるまいし……。
(Expression) Blendがありますし,VS2010からはVS本体でもデータバインドなどがやりやすくなりました。

ただし,トリガやVSMなどを使うのであれば,Blendを使うことになるかと。
VS2013だと,Professional以上であれば使えます。
# Express EditionsではWindows Store Apps用としてしか使えない。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: DXlib + C#を用いた場合のMV1_COLL_RESULT_POLY_DIM型構造体の使用について
返信数: 7
閲覧数: 1357

Re: DXlib + C#を用いた場合のMV1_COLL_RESULT_POLY_DIM型構造体の使用について

DxLibのVisual C#パッケージは,公式にも書いてあるように機械変換されたものです。
ただし,この機械変換の精度は決して高くありません。
e.g.) 過去の事例
このため,自分で必要な変換を書く必要があります。

また,構造体へのポインタを持つ構造体をマーシャリングするのは,非常に手間です。
http://msdn.microsoft.com/ja-jp/library ... .110).aspx
このあたりのマーシャリングを理解した上で,変換メソッドを書き直す必要があると思います。
# 戻り値もIntPtrで受けてMarshalクラス使って変換して……
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: C#オセロのコマの反転について
返信数: 6
閲覧数: 2066

Re: C#オセロのコマの反転について

投稿欄の上にある,「フォーラムルール」の,「質問は具体的にする」の項目に従って,
「自分は何が解らないのか、知りたいのか」
を提示して下さい。

コマの反転というだけでも,分解すれば複数の要素になるはずです。
e.g.) どの場所に置くのか,そこにその色のコマはおけるのか,反転するコマはどれか,実際に反転させるとどのようになるのかetc.
いきなり,全てをやろうしていませんか。
ちゃんとわかるところまで処理をかみ砕いて,それを実装していってみてはどうでしょうか。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: C言語のgotoについて
返信数: 8
閲覧数: 1406

Re: C言語のgotoについて

startcgengo さんが書きました:scanfが最初の1回しか代入できません、
gotoでもとに戻るはずなのに何故できないのでしょうか?
scanfへの入力として,どのような文字列を与えましたか。
数字と空白以外のものを与えた場合,scanfはxへの代入に失敗し,バッファには元の文字列が残り続けます。
この結果,xが1になった後に失敗すると,xが1のままバッファから数字を取ろうとしては失敗し続けることになります。
e.g.) 入力:"1 x"の場合。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: VB.NET
返信数: 6
閲覧数: 782

Re: VB.NET

・コードの冗長化を無くしたい これだけであれば,単純にConnection作成用のモジュールを用意するだけでよいかと思います。 データベースはモデルが取り扱うので,モデルの中でうまいこと取り回すことも多いですが……。 ただ,全体的に見るといくつか……。 Disposeを明示で呼び出すのでは無く,Usingブロックを使います。 データベースへのアクセスは例外が発生するもの,という前提で対処すべきです。 現在のコードでは,例外が発生するとコネクションがGCされるまで閉じられません。 メソッド内で同一の接続先へのコネクションを作って潰すのは,特別な理由が無い斬り無駄です。 コネクションプーリングが...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: PHPで配列同士の計算
返信数: 8
閲覧数: 1726

Re: PHPで配列同士の計算

文法上のエラーがそこかしこにあるので,まずはそちらを直すところから始めた方がよいかと。 おそらく,php -lのチェックだけで,5行目に文法エラーが見つかると思います。 そもそも,DOMDocumentのコンストラクタを指定する必要はありません。 # 一からDOMを作るなら別ですが。 refs) http://www.php.net/manual/ja/domdocument.construct.php 次に,DOMElement::getElement s ByTagNameであって,DOMElement::getElementByTagNameではありません。 このあたりは,PHPのログを...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: PHPで配列同士の計算
返信数: 8
閲覧数: 1726

Re: PHPで配列同士の計算

まず、きちんとした入力仕様を定義できますか? 今回はXMLなので,例えば <?xml version="1.0" encoding="utf-8"?> <xs:schema elementFormDefault="unqualified" xmlns:xs="http://www.w3.org/2001/XMLSchema" > <xs:element name="array"> <xs:complexType> <xs:sequence> <xs:element name="real" minOccurs="3" maxOccurs="3" type="xs:float" /> </xs:...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: C#において、ラジオボタンの選択肢を保存する方法
返信数: 2
閲覧数: 5726

Re: C#において、ラジオボタンの選択肢を保存する方法

ラジオボタンは特殊なコントロールで,デザイナからApplicationSettingsとの関連付けを行ったり,データバインディングを行うと挙動がおかしくなってしまいます。
このため,自分で状態を保存する必要があります。
# 前に苦労してデータバインドした覚えが……。

手っ取り早いのは,LoadイベントあたりでProperties.Settingsから状態を読み出して,ChangedイベントでProperties.Settingsに状態を書き出してしまうことでしょうか。
Properties.Settingsなので,保存先は自分で指定できませんが……。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: C++stringクラスを用いた文字列の分解について
返信数: 1
閲覧数: 1159

Re: C++stringクラスを用いた文字列の分解について

C++でstringクラスを用いた文字列分解プログラムを書いているのですが 分解は成功しているようなのですが2つめ以降の分解した結果が表示されなくて 行き詰まってしまいました。 「分解は成功している」と考えた根拠は何ですか。 こちらで試したところ,明らかに文字列の分割に失敗していましたが。 <iostream.h>という過去の遺物を使っている,<string>を使っているのに名前空間がないのでコンパイルに失敗する,というのは差し引いています。 int explode(string kugiri, string t, string result[]){ string::size_type in...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 新しいFormを表示する方法
返信数: 2
閲覧数: 785

Re: 新しいFormを表示する方法

バックグラウンドの説明をば。 Visual Studio 2005以降のC# Windows Formsデザイナは,最初にファイルが作られるときに"(拡張子を除いたファイル名).Designer.cs"というファイルを作り, そちらにInitializeComponentおよびDisposeの2つのメソッドを記述します。 そして,デザイナでの操作はすべてInitializeComponentメソッドの中に記述されていきます。 これがコンストラクタにInitializeComponentの呼び出しが書かれている理由です。 Visual Studio.NET/Visual C#.NET/Visua...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: iOS端末とWebページのデータを同期させる方法(クラウド利用)
返信数: 2
閲覧数: 1133

Re: iOS端末とWebページのデータを同期させる方法(クラウド利用)

そもそも「クラウド対応」って何のことを言っているのでしょうか。
Amazon EC2やWindows AzureにWebサービス構築してデータを保存させればクラウドを「使っている」とは言えるでしょうけれども……。

データ同期自体はオンプレミスサーバーでもできた話なので,何をもって「クラウド対応」と言っているのか気になります。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: C#からVC++の関数をコールする場合
返信数: 7
閲覧数: 1771

Re: C#からVC++の関数をコールする場合

P/Invoke 対 C++/CLI に悩まされます。 どっちを使うほうが、C#のガーベージコレクションからの影響を最小限にする可能でしょうか。 C++/CLIはCLI上で動く以上,Managed Codeに関してはC#と同等のGCの影響下にあります。 GCを理由にP/InvokeとC++/CLIの使い分けをすることは普通は行わないでしょう。 # CLIのMSによる実装がCLRであり,CLR + MS拡張のライブラリ(WinForms等)が.NET Framework。 そもそも,なぜそこまでGCを気にするのですか。 現在,確実にGCによる影響で性能劣化が起きている状況であるならば,その状況...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: C#からVC++の関数をコールする場合
返信数: 7
閲覧数: 1771

Re: C#からVC++の関数をコールする場合

普通のプログラムで,そうそうGCが気になることはないと思いますが……。
GCについて「気にしない」のがこれからも通用する,P/Invokeの使い方だと思いますよ。
# 気にするのであればC#側を相当気にかけて作る必要があるので,P/Invokeがどうこう,などという問題ではない。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: C++でのTwitterデータの取得
返信数: 21
閲覧数: 7953

Re: C++でのTwitterデータの取得

・Twitterのデータ取得にはXauthやOauthなどの認証は必要か  -書き込みに認証は必要だが、取得のみでも必要でしょうか 必要です。 Twitter / サービス利用規約 の8. (iii)に,Twitter社の承諾無しにスクレイピングを行うことを禁じる条項があります。 よって,公開APIを使う必要がありますが,公開APIの使用で認証が不要なのは認証自体を行うためのURI群くらいです。 # help/tos や help/privacy ですら認証が必要。 ・取得はどのように行えばいいか -APIやライブラリなどC++で何かオススメの方法があればお願いします。 ライブラリのお薦めは...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: [c++] テンプレートの型名について
返信数: 3
閲覧数: 779

Re: [c++] テンプレートの型名について

既にusaoさんが回答されていて被っていますが,投稿してしまいます。 (INCITS/)ISO/IEC 14882:2011 3.4.1 Unqualified name lookupに,iteratorをMyClass<T>の中から探す,というルールがないからだと思います。 一番関係しそうな¶8では, A name used in the definition of a member function of class X following the function’s declarator-id or in the brace-or-equal-initializer of a non...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 本当にtry-catchで処理すべき問題??
返信数: 7
閲覧数: 1405

Re: 本当にtry-catchで処理すべき問題??

setjmp/longjmpを用いて例外っぽい処理を書こうと思うと、まさにローカル変数への変更は担保されませんので、try-catchがsetjmp/longjmpを用いて実装されている処理系だと同様に担保されない可能性はあります。 setjmp/longjmpを実装として使うのは勝手ですが,勝手にオブジェクトを破棄してはいけません。 私は「破棄」するとは言っていません。変数が破棄されるのではなく、変数への変更が無効化される、ということです。 変更によってオブジェクトが生成されていた場合,破棄しないといけません。 オブジェクトの変更は,オブジェクトの生成や破棄を伴う可能性が常に付随します。 ...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 本当にtry-catchで処理すべき問題??
返信数: 7
閲覧数: 1405

Re: 本当にtry-catchで処理すべき問題??

エラー処理となる例外機構でEOF検出ってしてもよいものなのでしょうか? 確かにこのコードはいちいちEOFが検出されたかどうかのコードを随所に書く必要がなくなるのですが、 友人曰くお勧めしないと言われたところにより気になった次第です。よろしくお願いします。 一般的ではありませんし,「例外」機構を使うべき所ではないと思います。 EOFは通常必ず起きる状況であって,特別な状況ではありません。 少なくとも,初回のEOFは例外無しで取得できるようにした方がよいでしょう。 # 例外原理主義的な,JavaですらEOFが例外で検出される構造にはなっていません。 C++の規格をちょっと調べたのですが、該当する...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: C#は面倒?
返信数: 4
閲覧数: 1097

Re: C#は面倒?

・ちなみにMonoがあるため・・ でもMonoてマックでC#をやるときに使うものですよね? 違います。 Xamarin 社による,Microsoft以外のCLIの実装です。 例えば, Unity や PlayStation Mobile もmonoを使っています。 さらに, mono にはWindows用のバイナリも存在します。 つまりこれが入っているマックならC#ゲームで遊んでもらえると言う解釈でよいのでしょうか? どの程度の機能を使ったかに依存すると思います。 例えば, DllImport属性 を使ったP/Invokeを使ったり,COM参照等をすれば当然Windows以外では使えなくなり...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: xmlファイルをphp→mysql
返信数: 11
閲覧数: 2923

Re: xmlファイルをphp→mysql

>>iPhoneからもアップロードと同じ形式でやるなら問題ないです。 xampp/htdocsにファイルを保存するのはセキュリティ的にどうかと思いますが。 最終的には、どこに保存するんでしょうか? ファイルごとDBに突っ込むのが基本です。 DBを使わず,または,使ってもパスを保存する場合は,一度プログラムを経由して取得するのがよいです。 この場合,ファイルが専用のディレクトリに置きます。 ディレクトリトラバーサルの脆弱性が含まれないように注意が必要ですが。 この掲示板の場合,画像などは http://dixq.net/forum/download/file.php?id=XXXX という形で...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: ブラウザゲームのソースコードについて
返信数: 7
閲覧数: 1930

Re: ブラウザゲームのソースコードについて

艦これはFlashで動いています。
なので,ソースを直接読むことは不可能です。
# 逆コンパイルはできるかもしれませんが。

あと,データはJSONで送られているみたいですが,色々と無駄が多いと知り合いが言っていました……。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: xmlファイルをphp→mysql
返信数: 11
閲覧数: 2923

Re: xmlファイルをphp→mysql

xmlデータは単純に保存するのではなく、一応、iphone側で呼び出されたらDBからそのxmlファイルを読み込んで、iphone側で使用したいと考えております。 これは,iPhoneではXMLのデータをそのまま使いたい,ということですか。 そうであるならば,例えばMySQL用のDDL CREATE TABLE `propertylist` ( `id` INT PRIMARY KEY AUTO_INCREMENT, `xml` TEXT NOT NULL ); で作られるようなテーブルを用意しておき, 最初にXMLを送られてきたときにはWeb APIはid値を返し,iPhone側ではそのid...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: xmlファイルをphp→mysql
返信数: 11
閲覧数: 2923

Re: xmlファイルをphp→mysql

現在xcode上でxmlファイルをpostすることができたのですが、mysqlはs調べてみたところxmlファイルのままでは保存できないとのことでした。 そこでそれに合わせてphp側でも変換などの処理をしなければ行けないと思うのですが、どのようにしていけばよいでしょうか? アドバイスもらえれば幸いです、 そのXMLデータをどう扱いたいのでしょうか。 単純に保存しておけばよい (クエリとして使わない) のであれば,TEXT型の列に入れてしまえばよいです。 ただ,普通はXML自体はデータをシリアライズした結果としてのXMLでしょう。 であれば,XMLのスキーマとDBのスキーマをどう対応させるかを決...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: phpでエラーが表示される
返信数: 26
閲覧数: 8807

Re: phpでエラーが表示される

$mysqli->connect_errorは接続(オブジェクト生成)時のエラーしかチェックしない可能性を感じました。 http://www.php.net/manual/ja/mysqli.connect-error.php $mysqli->prepareの後、$stmtがFALSEになっていないかを確認してみてください。 http://www.php.net/manual/ja/mysqli.prepare.php その通りで,prepareは失敗するとFALSEを返します。 エラーの確認はmysqli::$errorを利用するようです。 # 普段PDOをエラー時に例外を送出するモード...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 結局どっちが主流なのか?
返信数: 11
閲覧数: 5644

Re: 結局どっちが主流なのか?

どういう集合について,どういう観点から見たときの話でしょうか。
# 本文に全ての情報を記述すべきです。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 構造体の直列化(Persistency)
返信数: 7
閲覧数: 2373

Re: 構造体の直列化(Persistency)

ただ、ポインタの存在はC言語の付き物で、C#やboostあたりでポインタまで 有効にシリアライズしてくれるツールはないでしょうか。 ポインタに限らず,オブジェクトのシリアライズが最終的には自分で実装になるのがC/C++です。 boost::serializerも,ポインタが指す実体のトラッキングはしてくれますが,クラスのシリアライズコード自体は自分で書かないといけません。 ref) http://daily.belltail.jp/?p=345 C#というか.NET Frameworkでは,リフレクション機能があることと,任意の位置へのポインタがないために, .NET Framework 1...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 構造体の直列化(Persistency)
返信数: 7
閲覧数: 2373

Re: 構造体の直列化(Persistency)

シリアライズ時にポインタや関数ポインタ,メンバへのポインタなどを考慮して作れば可能です。
基本的には,オブジェクトや関数,メンバにIDを振っておいて,ポインタの代わりにそのIDを保存します。
非ポインタ,非参照なサブオブジェクトへのポインタも考慮する必要がありますが。
# ポインタ自体がIDといえばIDですが,あくまでシリアライズ時に振り直す必要がある
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: cとc#での共有メモリ
返信数: 13
閲覧数: 7196

Re: cとc#での共有メモリ

そもそも,共有メモリを使用する必要はあるのですかね。
普通のプロセス間通信,TCP/IPやNamed Pipeなどに比べて,共有メモリは同期や排他が必要なので格段に取り扱いが難しい技術です。
勉強不足であるならば,もっと簡単な方法を採った方がよいと思いますが。
オフトピック
現実的に共有メモリが必要な状態ってあまり思いつかないです。
他のプロセス間通信では不足するという状態にならないと思うのですが。
さこさこ さんが書きました:プログラムでwbbrowserを使う必要があったのでc#をしょうがなくやっています。
CでIWebBrowser2使えばよいのでは,と思ってしまったり。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: phpでエラーが表示される
返信数: 26
閲覧数: 8807

Re: phpでエラーが表示される

sinzan さんが書きました:my.iniは以下のようになっておりました。
(snip)
sinzan さんが書きました:# The MySQL server
[mysqld]
port= 3306
なので,サーバーポートはデフォルトの3306です。
クライアント(PHP)側は3306に繋げないといけません。
おそらく,ポートを省略すれば3306に繋げると思いますが。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: cとc#での共有メモリ
返信数: 13
閲覧数: 7196

Re: cとc#での共有メモリ

BinaryReader.ReadStringは,先頭に長さを示す可変長のデータが含まれていないと正しく読み取れません。
C++とC#で文字列をやりとりするのであれば,先頭にint型の領域を設けそこにC++側で長さを指定しておき,C#側ではそのバイト数だけ読み取ってEncoding.GetStringで文字列化するとよいでしょう。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: [C#]コントロール間の連携
返信数: 4
閲覧数: 2920

Re: [C#]コントロール間の連携

個人的には, TreeView のノードをダブルクリック TreeView. DoubleClick のイベントハンドラで, GetNodeAt を元に TreeNode を取得 TreeNodeからModelのオブジェクトを取得 (Tagあたりとか,継承を使うとかする) 取得したオブジェクトが,「『開いているファイル』オブジェクトのリスト」を管理するオブジェクトにファイルを開くように要求 (=メソッド呼び出し) 管理オブジェクトが,「開いているファイル」オブジェクトを作成し,リストに追加し,変更イベント ( INotifyCollectionChanged . CollectionChang...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: phpでエラーが表示される
返信数: 26
閲覧数: 8807

Re: phpでエラーが表示される

ポートは以下のようになっていました。 なにかが間違ってているのでしょうか? 何を調べたのかはわかりませんが,MySQLの設定なので,my.iniを調べましょうよ。 現在,MySQLをインストーラーで普通にインストールすると,my.iniは %AllUsersProfile%\MySQL\MySQL Server 5.6\my.ini にあります (MySQL community Server 5.6の場合)。 # xamppではどうなるかは不明。MySQLサービスのコマンドラインを見れば書いてあるかと。 で,my.iniのあるディレクトリで find "port" my.ini とやれば,ポ...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: cとc#での共有メモリ
返信数: 13
閲覧数: 7196

Re: cとc#での共有メモリ

MemoryMappedFile.OpenExistingで開いて,CreateViewStreamで得たStream相手に入出力,でしょうか。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: phpでエラーが表示される
返信数: 26
閲覧数: 8807

Re: phpでエラーが表示される

ポートの指定までしていますが,正しいポートを指定していますか。
つまり,MySQLのポートは本当に12345ですか。
デフォルトでは,MySQLは3306を使いますが……。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者です。
返信数: 52
閲覧数: 2762

Re: 初心者です。

プログラムを改造してRock-paper-scissors-lizard-Spockを作りましょう、としたとき、ただの屍のようださんの方法だと勝敗判定処理をゼロから作り直す必要がありますよね。 つまり保守性が限りなくゼロだということです。 そうですか? 私も通常のじゃんけんであれば,単純に勝敗は手に0/1/2に割り当てて,(Aの手 - Bの手 + 3) % 3で出しますね。 手の数が5個であっても,(Aの手 - Bの手 + 5) % 5で判定できるように割り当てれば,それで条件は一緒です。 順序としては,ゲーム名のlizardとSpockが逆で,Rock, Paper, Scissors, ...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: pthread_createの引数について
返信数: 9
閲覧数: 5337

Re: pthread_createの引数について

解決とありますが,きっちりとした回答がついていない点がありましたので。 引数をvoid *argとはせずに初めからint * argとしない理由はなんでしょう。 pthread_create の第3引数が,void * (*)(void *)型だからです。 で,普段void *と任意の型のポインタを自由に変換できるのは,コンパイラが「変換が必要である」ことを知っていて,コンパイラが変換を自動的に行ってくれているからです。 最近の処理系では,ポインタ型の内部表現はどれも同じでしょうけれども,過去には 内部表現の異なる処理系 も存在しましたし,標準もそれを許しています。 pthread_creat...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 激論中の文字列リテラル
返信数: 34
閲覧数: 3538

Re: 激論中の文字列リテラル

なんか知らないうちにこんなことが……。 参考用に「未定義の動作」という言葉の定義を書いておきます。 規格を知らない人がこの議論を読む上で参考になるかと思いますので。 # というか,この定義を知らないと話について行けないかと。 in ISO/IEC 9899:1999 Programming languages -- C / 3. Terms, definitions, and symbols / 3.4.3 1 undefined behavior behavior, upon use of a nonportable or erroneous program construct or of ...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: プロセス間のデータ交流問題
返信数: 25
閲覧数: 3753

Re: プロセス間のデータ交流問題

100ns台の応答速度が必要なプログラムって,いったいなんでしょう。
通常の案件ではないとしか思えませんが……。
その応答速度を必要とするのであれば,最初からプロセス分離とかしないでしょうし……。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 2冊めの本について
返信数: 45
閲覧数: 2692

Re: 2冊めの本について

ゲームだと殆ど関係無さそうですね。決めるのはLawlietさんですけど。 と言うことは、もうゲームの方に行ってもいいということでしょうか? それを決めるのもLawlietさんだと思いますよ。 個人的には,ゲームを作るからといってゲーム作りだけを勉強するのではなく,他の知識も同時に勉強していけばよいと思っていますが。 # 設計なども知らないと規模が大きくなると簡単に破綻しますし。 既に出ている「じゃんけん」「三目並べ」「ヒットアンドブロー」などを,一度今の知識だけで作ってみるとよいとは思います。 ネット上に大量のサンプルがあるとは思いますが,それらを見ずに作って下さい。 じゃんけんの勝敗の決定...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: プロセス間のデータ交流問題
返信数: 25
閲覧数: 3753

Re: プロセス間のデータ交流問題-----逆発想で

その「共有ファイル」を「メモリ仮想ファイル」= 「メモリによる仮想デスク」にすればいいでしょう。 これは「ファイルを仮想メモリにする」とはまったく逆発想ですね。 仮想デスクが何者かがわかりませんが,既に それから、ファイルをマッピングしないで、物理メモリ上のキャッシュのみを扱うこともできます。 とISLeさんが述べられていることと何か違うのでしょうか。 ref) Sharing Files and Memory (Windows) ところで,共有メモリ形式ではスレッドと同じく同期や排他制御が必要になりますが,そのあたりの知識は十分ですか。 書き込み中における読み込みによるDirty-Read...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: プロセス間のデータ交流問題
返信数: 25
閲覧数: 3753

Re: プロセス間のデータ交流問題

データ通信をストリーム的に行いたいなら,名前付パイプとかSocketとか。
どちらにしても非同期I/Oやスレッドを使うので,面倒ではあります。
# ウィンドウ持っているなら,WM_COPYDATA投げ合うのが一番楽な気もしますが……。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 似たような処理をまとめたい
返信数: 6
閲覧数: 1146

Re: 似たような処理をまとめたい

現在配列内を調べる関数として以下があります。(メンバ関数の一部です) 現在地点から上下左右に調べる関数なのですが、似たような処理なのにまとめられなくてモヤモヤしています。 ただfor文の条件と、getTypeの引数が違うくらいでほぼ同じです。 何かいいまとめ方はないでしょうか? わたしだったら,若干効率を犠牲にしまいますが,xとyのインクリメント値を引数に渡すことで処理します。 namespace { bool checkType (int x0, int y0, int cx, int cy, int type) // cx, cyはインクリメント値。 { for (int x = x0 ...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: javaのLinkedListとArrayKistについて
返信数: 3
閲覧数: 1045

Re: javaのLinkedListとArrayKistについて

The type ArrayList is not generic; it cannot be parameterized with arguments <String>および Syntax error, parameterized types are only available if source level is 5.0 と出てコンパイルができません。 javacの-sourceオプションで1.4とかを指定していませんか。 GenericsがJavaに導入されたのはJavaSE 1.5 (Java 5)なので,それ以前のバージョンを指定した場合,コンパイルできません。 としてみると上に...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: ヘッダファイルでのインクルードについて
返信数: 8
閲覧数: 1132

Re: ヘッダファイルでのインクルードについて

>>関数の宣言に構造体の定義は不要です。 これは、関数の宣言、ヘッダに描いてある void player_attack(MOUSE m,PLAYER *p); にPLAYER p;と書かれているから PLAYER構造体にはtypedefは必要ないということでいいんでしょうか? そうだとして、なぜtypedefが必要が無いんでしょうか? typedefが必要ないのではなく,構造体の定義が不要である,ということです。 構造体の定義は,一般的に struct tagname { members } という形をとります。 # 手元に仕様書がない状況なので,仕様書での表現を使っていません。 構造体の宣...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: オブジェクトの指向勉強法
返信数: 11
閲覧数: 1239

Re: オブジェクトの指向勉強法

オブジェクト指向と言っても,大きく分けるだけで メッセージベースのオブジェクト指向 (Smalltalk) クラスベースのオブジェクト指向 (C++) プロトタイプベースのオブジェクト指向 (Javascript) と,それぞれまったく違う特性を持っています。 継承や多態がオブジェクト指向に必須かと言われると,そうとも言えないですし, カプセル化は抽象データ型で達成できて,それは構造化プログラミングの延長ですし……。 # とはいえ,分厚い「オブジェクト指向入門」ではADTに結構なページを割いていますが。 源流に立ち返るのであれば,オブジェクト指向の本質はメッセージパッシングなんでしょうけれども...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: ヘッダファイルでのインクルードについて
返信数: 8
閲覧数: 1132

Re: ヘッダファイルでのインクルードについて

関数の宣言に構造体の定義は不要です。 また,C++であれば無名構造体をtypedefする必要が乏しいです。 タグ名を付けた構造体は,ヘッダファイルの依存性を減らすのに役立ちます。 例えば,player.hは //player.h #ifndef DEF_PLAYER_H #define DEF_PLAYER_H struct PLAYER { // typedef名ではなく,構造体のタグ名にする int py,px; int oldy,oldx; bool walkflag; . . . }; struct WAPON; // 型の宣言だけをしておく struct GUN; // 型の宣言だけ...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: ハッシュ関数の動作がわかりません。
返信数: 3
閲覧数: 524

Re: ハッシュ関数の動作がわかりません。

どういう方法,と問われてもコードそのものが方法なのですが……。
何がわからないのでしょうか。
# ハッシュ関数としての性質はよくないです。最後の数文字だけが結果に影響を及ぼすため。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 画面キャプチャ、動画作成について
返信数: 1
閲覧数: 497

Re: 画面キャプチャ、動画作成について

technic さんが書きました:画面ショットを取ってBMPに保存する方法はWEBですぐに見つかったのですが、
それをどうやったら動画にできるのでしょうか。
また、一般的な方法だと、BMPを連続して表示して動画のように見せるのでしょうか。
動画作成/編集ソフトによっては,連番のBMPファイルを動画にする機能を持っていたりはします。
ただ,そもそも動画でキャプチャするソフトウェアがあるので,そちらを使った方が簡単だと思います。
e.g.) Microsoft Expression Encoder 4のScreen Capture等
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: ソケットの非同期通信について
返信数: 2
閲覧数: 519

Re: ソケットの非同期通信について

上記のサンプルを参考にしてみたものの、受信時にやたらと時間がかかり、 接続がタイムアウトしてします。 (MSDNのサンプルにいたっては最初の一回は同期通信のように固まってしまいます) ネットワークアクセスを行うプログラムは,通常非同期接続するか別スレッドで同期接続をしていると思います。 なので,受信時に根本的に時間がかかることはないと思います。 # 接続後送信側が送信するまでに時間がかかっている可能性はある。 また, MSDNのサンプル は単純に「非同期通信機能を使ってみました」でしかありません。 Send/Receiveメソッド呼び出しの直後にWaitOneで送信/受信を待ってしまっています。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 【C#/WPF】画像サイズの挙動について
返信数: 2
閲覧数: 4043

Re: 【C#/WPF】画像サイズの挙動について

WPFのImageコントロールに画像を読み込んだとき、例えば64x64の画像であれば、勝手に85x85にリサイズされてしまいます。StretchをNONEにしてもUniformにしても無駄でした。 論理ピクセルと物理ピクセルの兼ね合いの問題なのかなと思いきや、その他の場面でpixelを指定すると全て物理ピクセルと1:1でちゃんと表示されました。 結果、全体としては表示が乱れて思うような操作ができません。 この,85x85というのはどのようにして測定された値でしょうか。 こちらで単純にImageやViewBoxに入れたImageに,64x64の画像をSourceに設定し, ActualWidt...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 学校の課題なのですが…
返信数: 4
閲覧数: 5737

Re: 学校の課題なのですが…

# ソースコードはcodeタグで囲むようにして下さい (投稿時のフォーラムルール欄参考)。

100*content/totalはint型になります。
このため,printfの対応する書式が%fなので未定義の振る舞いとなっています。
%fに対応する,つまりはdouble型にするには,100.0*(double)content/(double)totalのように,式をdouble型で計算します。
まぁ,doubleとintの演算はdoubleなのでキャストを省略可能で,100.0*content/totalのように書けます。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: C言語で13日の金曜日を求めたい
返信数: 23
閲覧数: 15798

Re: C言語で13日の金曜日を求めたい

ループ変数の値をループ中で変更してはいけません。
これは絶対ではないですが,理由なくやることは今回のようにバグの元になります。

出力された値をよく見れば,yに関するループの先頭でyの値が2001から変化していないことがわかるはずです。
また,mに関するループの末端でmの値が常に13であることもわかるはずです。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: C言語で13日の金曜日を求めたい
返信数: 23
閲覧数: 15798

Re: C言語で13日の金曜日を求めたい

xcodeとかのデバッガ使って追った方が楽なのですが……。 terminalとのことなので,とりあえずprintfデバッグを。 whileの開始直後や終了直前,ifの前や後などに,printfで変数の内容を出力してみて下さい。 例えば,14行目の直後には printf("while(1).begin : y=%d, m=%d, d=%d, y1=%d, m2=%d", y, m, d, y1, m2); 23行目の直後には printf("if(2).before : y=%d, m=%d, d=%d, h=%d, y1=%d, m2=%d", y, m, d, h, y1, m2); のよう...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 状態遷移のプログラムの課題
返信数: 28
閲覧数: 2109

Re: 状態遷移のプログラムの課題

> 初期状態を乱数を使って、0か1を決定する。 ここで,どの確率で0,1になるのですか。 結果は変わらないのですが,プログラムを組む上で必要になります。 横道にそれつつ,「初期状態を乱数を使って、0か1を決定する。」の確率が定義されていなくても結果は変わらない,という話を。 数学的に見ると、 最初0が出る確率は0.5、1が出る確率も0.5 0だったとき再び0になるのは0.9なので、0.45、 1だったとき0になるのは、0.6なので、0.3 従って、最終的に0になるのは、0.45+0.3=0.75 かな? 初回の試行はそうなります。 2回目の試行では0である確率は0.75 * 0.9 + 0.2...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: アクティブでは無いウィンドウにキーボード入力を認識させたい
返信数: 7
閲覧数: 1312

Re: アクティブでは無いウィンドウにキーボード入力を認識させたい

in GetAsyncKeyState function (Windows)
vKey [in]
Type: int

The virtual-key code. For more information, see Virtual Key Codes.
MSDNを読めば分かりますが,全てにVK_から始まる定数が用意されているわけではありません。
Windows APIの動作に疑問を感じたなら,まずはMSDNを読むことをお薦めします。

---- Histroy ----
2013-06-01T20:47+09:00 最終行の文頭に「Windows APIの」を追加
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: boost::functionとオーバーロードされた関数
返信数: 4
閲覧数: 752

Re: boost::functionとオーバーロードされた関数

しかし、明示的に型を示したにもかかわらず、「オーバーロードされた関数を特定できない」という旨のエラーが吐かれます。 boostのヘッダを見たわけではないですが, http://www.boost.org/doc/libs/1_53_0/libs/smart_ptr/make_shared.html を見ると, shared_ptr<A> make_shared (int); に適合するmake_sharedはなく,make_shared<A>(1)は, shared_ptr<A> make_shared (int &&); 若しくは shared_ptr<A> make_shared (in...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: [C#] ツリービューを使った設定画面
返信数: 10
閲覧数: 3553

Re: [C#] ツリービューを使った設定画面

モデルというのは,単純にView,見た目以外の部分を指しています。 情報クラスはモデルの一部のはずです。 結局の所, フォームで必要な情報は,クラスにまとめておく ユーザーコントロールで必要な情報は,クラスにまとめておく フォームまたはユーザーコントロールに属するコントロール (ユーザーコントロール含む) で必要な情報は,そのフォームまたはユーザーコントロールで必要な情報が集まったクラスのプロパティとして提供する という形のクラスが必要になります。 これらをデータバインドなり,手作業でバインドするなりして,コントロールの状態と情報を持ったクラスの状態を一致させるようにします。 この時,情報を持...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: [C#] ツリービューを使った設定画面
返信数: 10
閲覧数: 3553

Re: [C#] ツリービューを使った設定画面

このプロジェクトでは、入力された情報を、別途ファイルに保存し、次回起動時に復元しなければならないのですが・・・ ツリービューと情報クラスとの紐をどうやって保存するか見当もつきません・・・ どうしたらいいのでしょうか、引き続きお願いできましたら幸いです。 ツリービューと情報クラスは紐付く必要はないでしょう。 Form自体がModelへの参照は保持していると思うので,Model自身かその一部をユーザーコントロールに渡します。 このあたりは,TreeNodeへの拡張と同じ方法です。 ただし,UserControlをデザイナで使うためにはデフォルトコンストラクタが必要なので, private Mod...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: [C#] ツリービューを使った設定画面
返信数: 10
閲覧数: 3553

Re: [C#] ツリービューを使った設定画面

ListBoxでも同じだと思うんですけどね……。 単純に,View部品に関係するView部品を持たせてしまうだけですから。 AとBの間に関連がある,というのであれば,それをオブジェクトの中に関連として保持します。 外側に関連を保持するのは,その関連が分散してしまう可能性があります。 ListBoxであってもインデックスを使う,というのは上記に反するので悪手で, ListBoxに「表示文字列」と「表示用ユーザーコントロール」を取得するためのプロパティを持つクラスのインスタンスを追加しておき, 表示はDisplayMemberで制御,コントロールの変化はSelectedItem経由で行う,というの...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: [C#] ツリービューを使った設定画面
返信数: 10
閲覧数: 3553

Re: [C#] ツリービューを使った設定画面

まず,右側に表示する内容はすべてUserControlにします。
次に,TreeNodeを継承したクラスは,UserControlを型とするpublicプロパティを用意しておきます。
setに関してはコンストラクタ引数にして,プロパティはgetのみとしてもよいでしょう。

で,TreeにTreeNodeを継承したクラスのインスタンスを追加する時 (property-set) or 作成する時 (constructor) に,
上記で作成したプロパティに表示するためのUserControlを設定します。
TreeNodeはViewの物なので,UserControlを直接持っても問題ないと思います。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: [C#] ツリービューを使った設定画面
返信数: 10
閲覧数: 3553

Re: [C#] ツリービューを使った設定画面

WinFormsであれば,個人的にはTreeNodeを継承したクラスを作り,そこに右側表示用のコントロールを紐付けられるようにしておきます。
そして,選択されたタイミングで右側に表示されるコントロールをTreeNodeから取得して切り替えます。

まぁ,WPFでDataTemplate使う,でやっちゃえそうな気もしますが。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: WINAPIについての質問です
返信数: 3
閲覧数: 526

Re: WINAPIについての質問です

WindowsのGDIオブジェクトやカーネルオブジェクトは,プロセス終了時まで自動的に解放されることはありません。 そもそも,ハンドルが使われていないことをWindowsが検知することは不可能ですから。 さらに,選択された状態のGDIオブジェクトをDeleteObjectすることはできません。 DeleteObject function のReturn Valueの所にも, 「成功すれば非0を,ハンドルが無効かDCに選択されていれば0を返す」という書き方で,DCに選択されているオブジェクトをDeleteObjectできないことが書かれています。 どちらもリソースリークなので,いつかCreate...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 最高解像度で動くゲームの開発
返信数: 4
閲覧数: 487

Re: 最高解像度で動くゲームの開発

マルチディスプレイにすれば,何も問題が無いように思いますが……。
フルスクリーンのアプリケーションや,WM_PAINTで何かするようなアプリケーションを作るならば,マルチディスプレイ環境は必須だと思いますが。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: レポート課題です。(提出期限切れなのであせってます。)
返信数: 20
閲覧数: 1554

Re: レポート課題です。(提出期限切れなのであせってます。)

  • 等しいことを比較するには, == 演算子をつかう
  • 冪剰余なので,かけて剰余をとる,を繰り返す
あたりでしょうか。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: マルチスレッドについて②
返信数: 2
閲覧数: 613

Re: マルチスレッドについて②

①スレッドは関数単位で動きますが、スレッドが終了した瞬間に、  そのスレッドのスレッドハンドルは自動的にシグナル状態になるのでしょうか? 正確には,スレッドオブジェクトがスレッド終了後にシグナル状態になります。 Terminating a Thread に,スレッド終了時に何が起きるかは書いてありますが,その順序までは書いてありません。 ②WaitForSingleObject()は引数のハンドルがシグナル状態になるまで処理を待つ。というのはなんとなくわかるのですが、  それはつまりこの関数を呼んでいるスレッドが止まるということなのでしょうか?  そうだとしたら、その関数の動きが止まってしま...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: C++ staticについて質問です
返信数: 2
閲覧数: 424

Re: C++ staticについて質問です

なりません。というか,クラスaでメンバ名にaという名前は使えません。

コード:

class A
{
    static int a;
};
class B
{
    static int a;
};
int A::a;
int B::a;
について,A::aとB::aは完全に別物です。
クラスはスコープを作ります。
異なるスコープ内であれば,見た目上同一の識別子であっても,実際には異なる識別子になります。
この点で言えば,

コード:

{
    int a;
}
{
    int a;
}
のふたつのaが別の識別子であり,別の変数であることと同じです。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: c#でのパケット送信方法がわかりません。
返信数: 4
閲覧数: 593

Re: c#でのパケット送信方法がわかりません。

とにかく「パケットを送信する」だけでれば,WebBrowserコントロールあたりをフォームに貼り付けてNavigateメソッド呼べばパケットはとびます。
そうではなく,目的があるのであれば,目的に合わせた方法で送信することになります。
だいたいSystem.Netまわりとか,System.Runtime.Remotingまわりとか,System.ServiceModelまわりなどを使うことになるかと。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: オブジェクトの定義とSTLについて
返信数: 5
閲覧数: 748

Re: オブジェクトの定義とSTLについて

その1:new Project()ではポインタを返されるのでエラーになると思いますが、 Project(引数)という定義の仕方はいってしまえばコンストラクターを直接呼び出してる処理だと思いますがなぜエラーにならないのかという疑問です。 new演算子は動的記憶域期間をもつオブジェクトの生成のための演算子です。 また,new TはT *型の戻り値をもつ式です。 list<T>::push_backの引数は,const T &またはT &&です。なので,T *を渡すことはできません。 次に,式中のT(x, y, ... )のような表現は,基本的には一時オブジェクトの生成式です。 生成された一時オブ...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: C言語の課題です
返信数: 3
閲覧数: 660

Re: C言語の課題です

直接質問と関係ないので控えていましたが,このままでは
  • 9時間駐車したら900円
  • 23時間駐車したら2300円
  • 24時間駐車したら800円
という結果が出てしまいますよ。
time * 100で計算するのは,timeが8以上では打ち止めにしておかないといけません。

問題文を
  • 1日ごとに800円
  • ただし,連続8時間以下の利用では1時間あたり100円とする (今回は8時間未満としても同じ事になる)
というふうに読み替えて,プログラムを組むと上記のようなことがおこらなくなります。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 基礎の基礎 プログラムについての関数
返信数: 4
閲覧数: 925

Re: 基礎の基礎 プログラムについての関数

元のたとえの粒度が違う気がしますが……。 (結果) ボタン押す→TVがつく       (ボタンを押すの関数) に対応させるのであれば, プログラムを実行する→メッセージが表示される といったレベルの話に相当します。 ボタンを押すとTVがつくというのは,ユーザーの動作に対しての,ユーザーから見た結果(というか,機器の反応)です。 そのレベルで,内部の構造を気にする必要は無いです。 ソフトウェアでもユーザーは内部の構造を気にする必要が無いのは同じで,ユーザーから見た場合にprintfなんてのは存在しません。 TVのたとえの文脈でprintfを語るなら,ICとかLSIとかでしょうか。 外部から与え...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: exe内でdellとしてエクスポート
返信数: 9
閲覧数: 910

Re: exe内でdellとしてエクスポート

def さんが書きました:起動中のexeから呼び出すのではなく、exe からdll を呼び出すように、稼働中出ないexe をたたいて、関数を呼び出す。
つまり、exe としては単体でつかえ、またdll としての振る舞いもできるexeはつくれるのでしょうか?
できますよ。先ほど私の添付したソリューションがそのまんま例になっています。
コードで言うなら,__declspec(dllexport)を関数に付ければよいです。

あと,DEFファイルも使えました。
通常のDLLで書くLIBRARY節を削除し,プロジェクトのプロパティで構成プロパティー/リンカー/入力/モジュール定義ファイル欄に追加することで利用可能です。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: exe内でdellとしてエクスポート
返信数: 9
閲覧数: 910

Re: exe内でdellとしてエクスポート

__declspec(dllexport)すればできますが……。 できないのは,.DEFファイルによる名前の制御くらいでしょうか。 と書いていたら,トピックに記事が追加されていて,意味が違っていたようですね。 DLLは実行時リンクであって,プロセス間通信機構ではないので,「別プロセス」である以上「dllのように」という表現が不適切です。 RPC (Remote Procedure Call) はRPCでWindowsはいくつかの機構を持っていますし,TCP/IP等を使って作り込むこともできます。 ただし,RPCは専用のコードが必要になるので,クライアント側が実装したところでそのまま使えるわけで...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: アセンブリで.textに文字列を定義したい
返信数: 7
閲覧数: 5016

Re: アセンブリで.textに文字列を定義したい

今 サーバから送られてきたデータをメモリ上に展開し、 実行するというプログラムを作っています。 うまく説明できませんが 実行ファイルがなくても実行できるプログラム(クラウド アプリケーション?) を作りたいと思っています。 それはクラウドアプリケーションではないですし,データ領域上のプログラムコードを実行することは,通常許されません。 データ領域のページのNXビットは少なくとも最近の64bit OSでは通常デフォルトで有効だと思いますが……。 ダウンロードしてテンポラリに書き出して実行する,インタプリタとして実行する,などのことをする必要があります。 ダウンロードしてテンポラリに書き出したな...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: コピーコンストラクタが呼び出されないことの解決方法
返信数: 2
閲覧数: 794

Re: コピーコンストラクタが呼び出されないことの解決方法

Piyoのコンストラクタのシグネチャを, Piyo (const T& val) とするか, 初期化子を, : ptr(new T(const_cast<const T &>(val)) とすればよいでしょう。 template Hoge<Hoge>(Hoge &) と Hoge (const Hoge &) の間で, new Hoge( /* val : Hoge & */ val) のオーバーロードでは,前者は変換が0回に対して後者はHoge &からconst Hoge &への変換が1回あるため,前者が選ばれます。 後者に対して変換が0回になるようにしてやることで,後者を選ぶようになります。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: 「(☝՞ ਊ ՞)☝」などの文字をデバッグ出力に表示する方法
返信数: 4
閲覧数: 3017

Re: 「(☝՞ ਊ ՞)☝」などの文字をデバッグ出力に表示する方法

解決済みで2ヵ月半前の話ですが,ちょっと追試的なことをしたので。 C#側からのアプローチなので,C++側からUnicodeで出力できる,というような話ではありませんのであしからず。 実行環境:Visual Studio 2012 Express for Windows Desktop / C# / .NET Framework 4.5 / Windows 8 必須環境(予想):.NET Framework 3.5かそれ以降の.NET Frameworkと,それに対応したVisual Studio,およびその上で動くC# using System; using System.Diagnostic...
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: Eclipseについて、またAndoroidの館について
返信数: 3
閲覧数: 475

Re: Eclipseについて、またAndoroidの館について

FpsControllerにカーソルを合わせて,[リファクタリング] - [名前変更]でしょうか。
# Pleiadesによる日本語化を行っているので,英語の場合はそのような名前のメニューを選択して下さい。
by YuO
6年前
フォーラム: C言語何でも質問掲示板
トピック: C#とDXLibでLoadDivGraph関数を使用して分割読み込みできない
返信数: 4
閲覧数: 1842

Re: C#とDXLibでLoadDivGraph関数を使用して分割読み込みできない

ざっと見out intなあたりがおかしいのでDxLibのダウンロードページ見て納得。 機械変換がおかしい。 int *がout intやref intに変わるのは,C++のint &の代わりに使っている場合のみで,配列を扱う場合はそのまま配列にする, マーシャリングする場合はMarshalAs属性をつける形にする必要があります。 # 単体/配列両方ならば,オーバーロードで解決する。 というわけで,DxLibDotNet.dllを自分で(コードを修正した上で)ビルドする必要があります。 今回に関する場所について書くなら,DxDLL.csの7190行目からの, [DllImport("DxLib....
by YuO
7年前
フォーラム: C言語何でも質問掲示板
トピック: [C#] リストボックスの項目編集
返信数: 3
閲覧数: 6002

Re: [C#] リストボックスの項目編集

BindingList<T>をListBoxのデータソースに入れている場合は,Tのプロパティを変更しても,そのままではListBoxは変更されません。
TがINotifyPropertyChangedを実装していおり,変更時にINotifyPropertyChangedのPropertyChangedイベントを発生させる必要があります。
by YuO
7年前
フォーラム: C言語何でも質問掲示板
トピック: C++ ファイル名からリソースのIDを取得したい
返信数: 10
閲覧数: 1347

Re: C++ ファイル名からリソースのIDを取得したい

勘違い。
D3DXCreateTextureFromResourceExがありますね。
戻り値のHRESULTは調べていますか。
by YuO
7年前
フォーラム: C言語何でも質問掲示板
トピック: C++ ファイル名からリソースのIDを取得したい
返信数: 10
閲覧数: 1347

Re: C++ ファイル名からリソースのIDを取得したい

リソースはファイルではありません。
ファイルを対象とするAPIにリソースの名前を渡しても,扱うことはできません。

素直にLoadResourceしてD3DXCreateTextureFromFileInMemoryExを使う,というのではだめなのですか。
by YuO
7年前
フォーラム: C言語何でも質問掲示板
トピック: バイナリサーチがうまくいかない
返信数: 18
閲覧数: 1116

Re: バイナリサーチがうまくいかない

バイナリサーチを初めて書くなら,定義通り再帰で書いた方が書きやすいと思いますよ。 慣れている人であれば,最初から再帰をループに展開して行えますが。 バイナリサーチは,以下の手順になります。 先頭インデックスが末尾インデックスより大きければ, みつからなかった 探索範囲の中央インデックスを求める 探索範囲の中央の配列値と求めたい値を比較する 同じであれば, そのインデックスが求めたい値 になる 異なる場合で,探索範囲の先頭インデックスと末尾インデックスが同じであれば, 見つからなかった 求めたい値の方が小さければ,先頭インデックスと中央インデックス-1の範囲をバイナリサーチする 求めたい値の方が...
by YuO
7年前
フォーラム: C言語何でも質問掲示板
トピック: ウィンドウ作成クラスの設計について
返信数: 7
閲覧数: 1091

Re: ウィンドウ作成クラスの設計について

ちなみに,ポインタをウィンドウに結びつけるには,GWL_USERDATAの他に,SetProp, GetPropを使う方法もあります。

私もウィンドウ/クラスをどう使うかで設計が変わると思っていますが,設計のやり方次第で,Viewの範囲外に対してウィンドウ/クラスを見せる必要がないような作りが可能だと思います。
# 必要ならば関数の引数で引き回すことになりますが……。
by YuO
7年前
フォーラム: C言語何でも質問掲示板
トピック: ゲームサーバーのルームの考え方
返信数: 9
閲覧数: 747

Re: ゲームサーバーのルームの考え方

ホヅミ さんが書きました:>暗号化するときの鍵や鍵交換はどうする予定でしょうか?TLSのようなものを考えていますか?
暗号鍵はプログラム内に固定させようかなと考えているのですが、やめた方がいいでしょうか?
暗号鍵の固定は(特に共通鍵暗号では)やめた方が良いでしょう。
ディフィー・ヘルマン鍵交換のような,鍵交換アルゴリズムを使って暗号鍵を毎セッションごとに作る方が安全です。
もちろん,暗号的に安全な乱数アルゴリズムが必要になりますが。

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