!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスや酔っぱらいレスはやめてください
>>980を踏んだ人は新スレを建てて下さい。>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■前スレ
ふらっと C#,C♯,C#(初心者用) Part150
https://mevius.5ch.net/test/read.cgi/tech/1616471904/
■関連スレ
C#, C♯, C#相談室 Part94
https://mevius.5ch.net/test/read.cgi/tech/1553075856/
■コードを貼る場合は↓を使いましょう。
https://ideone.com/
https://dotnetfiddle.net/
■情報源
https://docs.microsoft.com/ja-jp/dotnet/standard/class-libraries
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/
https://docs.microsoft.com/en-us/dotnet/standard/class-libraries
https://referencesource.microsoft.com/
・Insider.NET > .NET TIPS - @IT
https://www.atmarkit.co.jp/ait/subtop/features/dotnet/dotnettips_index.html
・DOBON.NET .NET Tips
https://dobon.net/vb/dotnet/index.html
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
ふらっと C#,C♯,C#(初心者用) Part151
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 0f2c-S5yT)
2021/05/16(日) 10:45:59.00ID:8qTwOc620242デフォルトの名無しさん (スッップ Sdea-Wt59)
2021/06/08(火) 00:47:15.41ID:OFJQpY+5d243デフォルトの名無しさん (ワッチョイ 6933-cd7n)
2021/06/08(火) 01:47:59.42ID:ib/yEAMa0 あんまりいぢめてやるなよw
ミミズだって オケラだって 220だって
みんな みんな生きているんだ 友だちなんだ
トンボだって カエルだって 223だって
みんな みんな生きているんだ 友だちなんだ
ミミズだって オケラだって 220だって
みんな みんな生きているんだ 友だちなんだ
トンボだって カエルだって 223だって
みんな みんな生きているんだ 友だちなんだ
244デフォルトの名無しさん (ワッチョイ 8663-EDrR)
2021/06/08(火) 02:46:10.20ID:ie1akZGa0 友達料の納付がまだのようですが?
245デフォルトの名無しさん (ワッチョイ c6da-BNg5)
2021/06/08(火) 05:24:55.94ID:zfzkcoOR0 あんぱん買ってこいよ
246デフォルトの名無しさん (スプッッ Sdea-cnok)
2021/06/08(火) 07:55:04.09ID:oPwax1u6d >>224
選択した時に処理したいです。
選択した時に処理したいです。
247デフォルトの名無しさん (アウアウウー Sa11-nZsP)
2021/06/08(火) 08:41:49.03ID:cqfCDeVba >>223
俺ならComboBoxのitemのTagにPointを入れとくかな
俺ならComboBoxのitemのTagにPointを入れとくかな
248デフォルトの名無しさん (ワッチョイ 86a7-hRUY)
2021/06/08(火) 10:56:38.50ID:WywmmIjb0249デフォルトの名無しさん (スフッ Sdea-PR6M)
2021/06/08(火) 12:52:13.99ID:T+eZSKNrd あんぱん買ってくるのでゴミみたいな質問をさせてください…
標準入力で
整数n
n文字の文字列
を取得して、n文字の文字列を1字ずつ縦に出力したい場合は何をどうすれば良いのでしょうか
検索する為のキーワードだけでもご教示いただければ嬉しい限りです…
標準入力で
整数n
n文字の文字列
を取得して、n文字の文字列を1字ずつ縦に出力したい場合は何をどうすれば良いのでしょうか
検索する為のキーワードだけでもご教示いただければ嬉しい限りです…
250デフォルトの名無しさん (ラクッペペ MMde-+uhU)
2021/06/08(火) 13:01:29.32ID:iJBocUpIM どこに出力するのですか?
251デフォルトの名無しさん (ワッチョイ 86a7-hRUY)
2021/06/08(火) 13:39:59.73ID:WywmmIjb0252デフォルトの名無しさん (ワッチョイ caec-LZmE)
2021/06/08(火) 14:16:53.52ID:qttYqnID0 標準入力からの行読み込み
文字列を整数に変換
文字列から文字取得 あるいは 文字列を配列に分割
改行 出力
文字列を整数に変換
文字列から文字取得 あるいは 文字列を配列に分割
改行 出力
253デフォルトの名無しさん (ワッチョイ ea4b-Alfg)
2021/06/08(火) 14:26:06.75ID:eKo67trX0 バイト配列と、構造体の相互変換ですが、Marshal を使った方法
Marshal.PtrToStructure / Marshal.StructureToPtr ではリトルエンディアンしか対応していません。
ラージエンディアンとBCDに対応した相互変換のライブラリ等はありませんでしょうか。
.NET5 を想定しています。
Marshal.PtrToStructure / Marshal.StructureToPtr ではリトルエンディアンしか対応していません。
ラージエンディアンとBCDに対応した相互変換のライブラリ等はありませんでしょうか。
.NET5 を想定しています。
254デフォルトの名無しさん (ワッチョイ 2501-tKmC)
2021/06/08(火) 14:42:51.35ID:bmgoTOXu0 >>249
その文字列の直前直後に改行がある場合はConsole.ReadLine()で読んでforeachで1文字ずつConsole.WriteLine
そうでないならConsole.Read()をn回呼んでConvert.ToCharしてConsole.WriteLine
その文字列の直前直後に改行がある場合はConsole.ReadLine()で読んでforeachで1文字ずつConsole.WriteLine
そうでないならConsole.Read()をn回呼んでConvert.ToCharしてConsole.WriteLine
255デフォルトの名無しさん (テテンテンテン MMde-1bbd)
2021/06/08(火) 15:07:20.57ID:bn01gd5kM >>253
ないから自作するしかなかったような記憶が
ちょっと漁った限りでは
https://github.com/davidrea-MS/BitConverter/tree/master/EndianBitConverter
→ https://www.nuget.org/packages/EndianBitConverter/
https://github.com/jfoshee/UnpluggedIbmBits
なんてのはあるみたいだけど、この位なら自前で書いてもさほど手間は変わらないような
ないから自作するしかなかったような記憶が
ちょっと漁った限りでは
https://github.com/davidrea-MS/BitConverter/tree/master/EndianBitConverter
→ https://www.nuget.org/packages/EndianBitConverter/
https://github.com/jfoshee/UnpluggedIbmBits
なんてのはあるみたいだけど、この位なら自前で書いてもさほど手間は変わらないような
256デフォルトの名無しさん (ワッチョイ ea4b-Alfg)
2021/06/08(火) 15:22:47.00ID:eKo67trX0257デフォルトの名無しさん (ワッチョイ 5d33-VNmt)
2021/06/08(火) 18:22:07.24ID:+zfftH1n0 >>249
たぶん、プログラムの基本である、逐次実行を理解して無いんじゃなかろうか
上から処理するし、順に出力されるのが基本
縦に出力させたいなら、上から順に出力する方法が基本
一気に表示させる事は出来るが、結局内部で上から溜めて一気に吐き出してるだけ
たぶん、プログラムの基本である、逐次実行を理解して無いんじゃなかろうか
上から処理するし、順に出力されるのが基本
縦に出力させたいなら、上から順に出力する方法が基本
一気に表示させる事は出来るが、結局内部で上から溜めて一気に吐き出してるだけ
258デフォルトの名無しさん (ワッチョイ 0ae6-+uhU)
2021/06/08(火) 18:33:56.39ID:/pGHNa0l0 逐次処理なんて時代遅れ!!
LINQとかで一撃でズバーっと解決しちゃうのがナウいッスよ
LINQとかで一撃でズバーっと解決しちゃうのがナウいッスよ
259デフォルトの名無しさん (スププ Sdea-mtzw)
2021/06/08(火) 20:04:39.77ID:qmzAArb+d >>249
任意の場所に縦に並べたいなら、Consoleのカーソル移動をさせるメソッドを使えば良いよ。
任意の場所に縦に並べたいなら、Consoleのカーソル移動をさせるメソッドを使えば良いよ。
260183 (ワッチョイ 0ae4-uGAl)
2021/06/08(火) 20:44:50.12ID:zQ8wWAP20262デフォルトの名無しさん (ワッチョイ 1abd-t/gr)
2021/06/08(火) 23:24:49.74ID:MpN9Z3mi0 みんなどこでプログラム学ぶの?独学?有料スクール?会社入ってからの教育プログラム?
263デフォルトの名無しさん (ワッチョイ 89b0-PRuz)
2021/06/08(火) 23:57:18.30ID:DII63xyt0 切っ掛けは独学だったり学校だったり新人研修が多いんじゃないかな
けどその後はみんな独学でしょ
けどその後はみんな独学でしょ
264デフォルトの名無しさん (ワンミングク MM1d-Srd6)
2021/06/09(水) 03:51:36.11ID:D8wcA5EVM265デフォルトの名無しさん (アウアウウー Sa11-nZsP)
2021/06/09(水) 07:14:35.45ID:lHuF4fd4a266デフォルトの名無しさん (スププ Sdea-mtzw)
2021/06/09(水) 07:41:07.30ID:T7a0fZeMd >>265
雑誌はベーマガだった
雑誌はベーマガだった
267デフォルトの名無しさん (ブーイモ MM39-uR6V)
2021/06/09(水) 07:59:02.17ID:1IFZDN1pM268デフォルトの名無しさん (ワッチョイ 86a7-hRUY)
2021/06/09(水) 08:39:45.92ID:y9xSvLES0269デフォルトの名無しさん (ブーイモ MM39-uR6V)
2021/06/09(水) 09:56:27.08ID:1IFZDN1pM あーはいはいそうですねー
270デフォルトの名無しさん (ワッチョイ c110-lAlw)
2021/06/09(水) 10:29:54.65ID:tFTHFIz/0 質問です
System.Numerics.BigInteger型の整数を小数含めたfloatで乗算したいのですが、何か方法はありませんか?
System.Numerics.BigInteger型の整数を小数含めたfloatで乗算したいのですが、何か方法はありませんか?
271デフォルトの名無しさん (ワッチョイ d95f-b0cn)
2021/06/09(水) 11:07:43.11ID:m05KcYPg0 ASP.NETで作ったWEBアプリにグラフ追加したら、iOSでボタン押しても動作しなくなった。
原因分かる人いる?
原因分かる人いる?
272デフォルトの名無しさん (ワッチョイ a1ad-wkOw)
2021/06/09(水) 11:09:12.94ID:aIWwtEZD0 グラフ追加したからじゃないかなあ
273デフォルトの名無しさん (ブーイモ MM2e-V3Ia)
2021/06/09(水) 12:29:29.59ID:paDfdrYmM >>270
doubleやdecimalで収まる程度の桁数なんだったらそれらに変換してから計算すりゃいい
収まらないんなら必要な精度を決めて予めfloatの方を10^n倍して整数化した上でBigIntegerに入れて乗算するとか
doubleやdecimalで収まる程度の桁数なんだったらそれらに変換してから計算すりゃいい
収まらないんなら必要な精度を決めて予めfloatの方を10^n倍して整数化した上でBigIntegerに入れて乗算するとか
274デフォルトの名無しさん (ワッチョイ be62-jjbk)
2021/06/09(水) 12:42:27.77ID:A3ai3bJf0275デフォルトの名無しさん (アウアウウー Sa11-9b/0)
2021/06/09(水) 12:54:22.23ID:RdncRzI4a >>270
(1) 与えられるBigIntegerの値の範囲
(2) 演算結果として欲しい型と精度
まずこういう要件を定義しないと何とも言えないのでは?
こまけーことはいいんだよならdoubleにキャストして演算するだけだろうけど
(1) 与えられるBigIntegerの値の範囲
(2) 演算結果として欲しい型と精度
まずこういう要件を定義しないと何とも言えないのでは?
こまけーことはいいんだよならdoubleにキャストして演算するだけだろうけど
276デフォルトの名無しさん (ワッチョイ 1abd-t/gr)
2021/06/09(水) 22:22:16.62ID:yp9eglBe0 form1にTabControlとボタン2つ配置。
ボタンはnextボタンとreturnボタンとしてボタンのclickに応じてtabpageを切り替える処理がしたいです。
※処理※
起動時tabpageは最初のページ。nextで次ペ頁、 returnボタンで1つ前の頁。
最終ページでnextなら最初の頁。最初頁でreturnならformを閉じる。
それぞれのボタンのイベントに処理はネットみて書けたんですが、うまいこと一つにまとめる方法が知りたいです。
ボタンはnextボタンとreturnボタンとしてボタンのclickに応じてtabpageを切り替える処理がしたいです。
※処理※
起動時tabpageは最初のページ。nextで次ペ頁、 returnボタンで1つ前の頁。
最終ページでnextなら最初の頁。最初頁でreturnならformを閉じる。
それぞれのボタンのイベントに処理はネットみて書けたんですが、うまいこと一つにまとめる方法が知りたいです。
277デフォルトの名無しさん (アウアウウー Sa11-9b/0)
2021/06/09(水) 23:05:51.15ID:7RnwuUIHa うまいこと一つにまとめる、とは?
278デフォルトの名無しさん (ワッチョイ 8663-EDrR)
2021/06/09(水) 23:09:38.53ID:qAo90TQX0 剰余演算子をうまく使ってくだせえ
279デフォルトの名無しさん (ワッチョイ 86a7-hRUY)
2021/06/10(木) 01:08:35.30ID:M7C9mR8+0 タブに順番なんかあったっけ?
ユーザーがドラックしたら移動できんかったか?
ユーザーがドラックしたら移動できんかったか?
280デフォルトの名無しさん (アウアウウー Sa11-nZsP)
2021/06/10(木) 08:39:52.59ID:+OLSGNkTa >>276
ボタンのイベントを同じメソッドにしてその中のsenderで処理を分ける
ボタンのイベントを同じメソッドにしてその中のsenderで処理を分ける
281デフォルトの名無しさん (ワッチョイ ea4b-hvqo)
2021/06/10(木) 11:33:53.07ID:rur9wo/n0 class c {
public byte[] arr;
}
foo = new c(){
arr = new byte[10];
}
var ff = foo.GetType().GetFields(
BindingFlags.Instance |
BindingFlags.Static |
BindingFlags.Public |
BindingFlags.NonPublic |
BindingFlags.GetField
);
var f = ff[0];
var v = f.GetValue(foo);
この時 v は byte[] になりますが、v[0] にアクセスしたい場合はどうコーディングするのでしょうか。
そのままv[0]とすると、object型に[]を付けられないとエラー表示されます。
var zz=(byte[])v;
var z = zz[0];
とすればアクセスできる事は確認していますが、byte 部分が不明でもアクセスできるようにしたいのです。
public byte[] arr;
}
foo = new c(){
arr = new byte[10];
}
var ff = foo.GetType().GetFields(
BindingFlags.Instance |
BindingFlags.Static |
BindingFlags.Public |
BindingFlags.NonPublic |
BindingFlags.GetField
);
var f = ff[0];
var v = f.GetValue(foo);
この時 v は byte[] になりますが、v[0] にアクセスしたい場合はどうコーディングするのでしょうか。
そのままv[0]とすると、object型に[]を付けられないとエラー表示されます。
var zz=(byte[])v;
var z = zz[0];
とすればアクセスできる事は確認していますが、byte 部分が不明でもアクセスできるようにしたいのです。
282デフォルトの名無しさん (ワッチョイ beda-nujg)
2021/06/10(木) 12:01:03.65ID:GQazDyFH0 型が分からないのに配列でアクセスできるわけないだろ。
型制約でも付けてみれば?
型制約でも付けてみれば?
283デフォルトの名無しさん (ワッチョイ ea4b-hvqo)
2021/06/10(木) 12:04:21.64ID:rur9wo/n0 自己解決
var zz = (Array)v;
var z = zz.GetValue(0);
var zz = (Array)v;
var z = zz.GetValue(0);
284デフォルトの名無しさん (ワッチョイ d95f-PRuz)
2021/06/10(木) 22:54:11.27ID:ZEfq1fzk0 ちょっととりとめのない質問なんですけど
社長が取ってきた仕事でどっかの会社が作ったC#アプリをうちの会社で修正するという仕事の担当になりました
んで中を調べてたら
edmxって言う拡張子があって
それがEntityFrameworkと言うことがわかったのです
データベースももらってきてビルドしたら通るように放ったのですけど
edmx内にあるcsファイル?(ッポイやつ)を開こうとしたらビルドエラーになってデザイナーが表示されなかったり
なんだか訳がわからなくて・・・
EntityFrameworkを猫でもわかるように解説してるところってないですか?
社長が取ってきた仕事でどっかの会社が作ったC#アプリをうちの会社で修正するという仕事の担当になりました
んで中を調べてたら
edmxって言う拡張子があって
それがEntityFrameworkと言うことがわかったのです
データベースももらってきてビルドしたら通るように放ったのですけど
edmx内にあるcsファイル?(ッポイやつ)を開こうとしたらビルドエラーになってデザイナーが表示されなかったり
なんだか訳がわからなくて・・・
EntityFrameworkを猫でもわかるように解説してるところってないですか?
285デフォルトの名無しさん (ワッチョイ 2501-BNg5)
2021/06/10(木) 23:13:12.60ID:RKq3rAMR0 只のXMLなので開いてみるべし
286デフォルトの名無しさん (ワッチョイ d902-oKoI)
2021/06/10(木) 23:28:07.46ID:0U76cbOA0 というか。
それはきちんと全てのファイルを開ける状態を要求しなければダメなパターンでは。
ああ。無駄な要求だと言うことは分かってるけど。
それはきちんと全てのファイルを開ける状態を要求しなければダメなパターンでは。
ああ。無駄な要求だと言うことは分かってるけど。
287デフォルトの名無しさん (ワッチョイ ffad-wP0n)
2021/06/11(金) 00:22:08.49ID:6smqcHVx0 EF3のModel Fistとかだったり…
288デフォルトの名無しさん (ワッチョイ bfbd-hyWT)
2021/06/11(金) 00:58:16.80ID:kVdsE3UJ0 public class PropertyCls {
public int PropertyInt{ set; get;}
}
class Program {
static void Main() {
PropertyCls p = new PropertyCls();
p.PropertyInt = 32;
Console.WriteLine(p.PropertyInt);
}
}
GetSetの壁にぶち当たってます。調べてもこんなコード等しか出てないし使い所が分かりません。
Mainの中にint p=32で終わりじゃんとか思えないんですが...
ひとつじゃ使わないけど、PropertyIntの他にもNameとかAgeとか複数の構造体?風な事が変数風?に出来るよって感覚ですか?
社員番号とかの例とかよく見ますが、他によく使うパターンとか教えて下さい。
public int PropertyInt{ set; get;}
}
class Program {
static void Main() {
PropertyCls p = new PropertyCls();
p.PropertyInt = 32;
Console.WriteLine(p.PropertyInt);
}
}
GetSetの壁にぶち当たってます。調べてもこんなコード等しか出てないし使い所が分かりません。
Mainの中にint p=32で終わりじゃんとか思えないんですが...
ひとつじゃ使わないけど、PropertyIntの他にもNameとかAgeとか複数の構造体?風な事が変数風?に出来るよって感覚ですか?
社員番号とかの例とかよく見ますが、他によく使うパターンとか教えて下さい。
289284 (ワッチョイ 335f-t88l)
2021/06/11(金) 01:06:01.10ID:qvzRqpry0 xmlファイルと言っても開いてどうなるのでしょうか・・・
とりあえずドキュメントは取説だけあって
doxygenでクラス関連図とか抜き出してみたけどコメントないし名前の付け方も訳がわからないので動かしながら見るしか無いという地獄・・
Totigiとかそんな感じのクラスがあって・・・
とりあえずドキュメントは取説だけあって
doxygenでクラス関連図とか抜き出してみたけどコメントないし名前の付け方も訳がわからないので動かしながら見るしか無いという地獄・・
Totigiとかそんな感じのクラスがあって・・・
290デフォルトの名無しさん (ワッチョイ f30c-l016)
2021/06/11(金) 01:34:48.60ID:rjcQbITm0291デフォルトの名無しさん (ワッチョイ cf63-N/EE)
2021/06/11(金) 03:39:29.02ID:SAQrE1k60 つかなんで使いどころがないと進めないんだ?
学校の勉強でいちいち使いどころとか考えてたか?
学校の勉強でいちいち使いどころとか考えてたか?
292デフォルトの名無しさん (ワッチョイ f3de-xoS4)
2021/06/11(金) 07:17:53.54ID:oCvSjx8Y0 getsetなんか俺はゴミだと思う
293デフォルトの名無しさん (スップ Sd1f-ewEI)
2021/06/11(金) 09:38:54.03ID:Pc6dU7Wud get setは構造化の基本
データの塊はこーゆー設計がいいよねって話
データの塊なので、利用、登録は意識しない
(なるべく他に依存しない)
ただ、オブジェクト指向だからって、車のネジ一本から作るのは間違い
そのアプリが目的としている形のオブジェクトでいい
トラックなのか乗用車なのか、とか、車なのか電車なのか
データの塊はこーゆー設計がいいよねって話
データの塊なので、利用、登録は意識しない
(なるべく他に依存しない)
ただ、オブジェクト指向だからって、車のネジ一本から作るのは間違い
そのアプリが目的としている形のオブジェクトでいい
トラックなのか乗用車なのか、とか、車なのか電車なのか
294デフォルトの名無しさん (ラクッペペ MM7f-WFTr)
2021/06/11(金) 10:22:39.64ID:N5qPgvwKM ×構造化
〇カプセル化(情報隠蔽)
〇カプセル化(情報隠蔽)
295デフォルトの名無しさん (スップ Sd1f-ewEI)
2021/06/11(金) 10:48:58.40ID:Pc6dU7Wud すまんね。
ただ「プログラムの構造・設計」って意味で言ったので間違ってないよ
(俺自身は隠蔽する意味を見出していない、日本語訳が間違ってるだけ?)
ちなみに、質問者のプログラムだと、登録と利用が同時に行われてるので、get setの意味は全く無い
意味ないと思うのは当然
ただ「プログラムの構造・設計」って意味で言ったので間違ってないよ
(俺自身は隠蔽する意味を見出していない、日本語訳が間違ってるだけ?)
ちなみに、質問者のプログラムだと、登録と利用が同時に行われてるので、get setの意味は全く無い
意味ないと思うのは当然
296デフォルトの名無しさん (アウアウウー Sa67-gVNt)
2021/06/11(金) 12:12:38.48ID:WhHgYbh2a 訳分からん俺様用語を使っている時点で本当は自分で何も調べてもいなければ
他人とコミュニケーションする意思もないことは明白。
getsetの壁って何やねんw
他人とコミュニケーションする意思もないことは明白。
getsetの壁って何やねんw
297デフォルトの名無しさん (ワッチョイ ff01-EoJ9)
2021/06/11(金) 12:36:14.35ID:9brEePq50298デフォルトの名無しさん (アウアウクー MM87-IdmB)
2021/06/11(金) 12:57:23.03ID:/Ldzrd4UM >>288
社員番号、入社年度、年齢、性別とか沢山の項目があるなら構造化する
ひとつならたいして意味ない。ただし項目によってはValueObjectにしたほうがいいかもしれない。
で、入社年度から在籍年数をクラス内で計算してgetできるようにするとか。そういったロジックをクラスに用意する。
ただこういうクラスの場合はsetを使うより
コンストラクタで渡すほうがよい。
で、get; private set;
にする
社員番号、入社年度、年齢、性別とか沢山の項目があるなら構造化する
ひとつならたいして意味ない。ただし項目によってはValueObjectにしたほうがいいかもしれない。
で、入社年度から在籍年数をクラス内で計算してgetできるようにするとか。そういったロジックをクラスに用意する。
ただこういうクラスの場合はsetを使うより
コンストラクタで渡すほうがよい。
で、get; private set;
にする
299デフォルトの名無しさん (ワッチョイ bf2d-42hD)
2021/06/11(金) 13:05:02.82ID:FNOyhnqL0 >>298
今はコンストラクタで初期化するならprivate setは不要
今はコンストラクタで初期化するならprivate setは不要
300デフォルトの名無しさん (スップ Sd1f-ewEI)
2021/06/11(金) 14:47:45.55ID:Pc6dU7Wud わかったよ
入門者はget setに注目してるから、訳がわからなくなるんだな
大事な方は、データの塊の持ち方であって、取り方入れ方は副産物
本来はgetって書いてあるから取ってるんだねって一発でわかる様になってたが、今は書かない様になったから、getメソッドのメリットが薄くなってる
入門者はget setに注目してるから、訳がわからなくなるんだな
大事な方は、データの塊の持ち方であって、取り方入れ方は副産物
本来はgetって書いてあるから取ってるんだねって一発でわかる様になってたが、今は書かない様になったから、getメソッドのメリットが薄くなってる
301デフォルトの名無しさん (ワッチョイ ff01-NdOG)
2021/06/11(金) 14:55:57.07ID:gX7+uLUh0 >>288
「GetSetの壁」より先に
「公式リファレンスの壁」を越えるといいよ
https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/classes-and-structs/using-properties
「GetSetの壁」より先に
「公式リファレンスの壁」を越えるといいよ
https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/classes-and-structs/using-properties
302デフォルトの名無しさん (ワッチョイ ff2f-JlJp)
2021/06/11(金) 15:00:19.14ID:hChWWabk0 根本的な疑問は
プロパティじゃなくて(公開)フィールドで良いんじゃないか、ってことじゃないのかね
プロパティじゃなくて(公開)フィールドで良いんじゃないか、ってことじゃないのかね
303デフォルトの名無しさん (アウアウウー Sa67-gVNt)
2021/06/11(金) 16:12:18.68ID:OoWb95ZEa >>302
恐らくその通りだと思うけど、聞いてる方も答えてる方も
コミュニケーション能力が低すぎてなんか滑稽なことになってるねw
そして、これが肝心だけど、そういうことなら普通
こんなところで質問する前に「プロパティ フールド 使い分け」
とかで検索する。
getsetの壁とか訳わからんこと言ってることから分かるように、
この質問者さんは普通の人がまずやることを何もやってない。
恐らくその通りだと思うけど、聞いてる方も答えてる方も
コミュニケーション能力が低すぎてなんか滑稽なことになってるねw
そして、これが肝心だけど、そういうことなら普通
こんなところで質問する前に「プロパティ フールド 使い分け」
とかで検索する。
getsetの壁とか訳わからんこと言ってることから分かるように、
この質問者さんは普通の人がまずやることを何もやってない。
304デフォルトの名無しさん (ワッチョイ cf63-N/EE)
2021/06/11(金) 18:01:38.21ID:SAQrE1k60 コミュニケーションの壁を感じますね(適当)
305デフォルトの名無しさん (スップ Sd1f-ewEI)
2021/06/11(金) 18:06:02.90ID:snOiqcmLd 俺がコミュ症とはひどいなぁ(文才が無いだけ)
人生口先だけで生きてきたよ
それは置いといて
質問者は「Mainの中にint p=32」と言ってる時点で、データ外出しに気づいてないなと思ったよ
人生口先だけで生きてきたよ
それは置いといて
質問者は「Mainの中にint p=32」と言ってる時点で、データ外出しに気づいてないなと思ったよ
306デフォルトの名無しさん (ワッチョイ 63da-0JFK)
2021/06/11(金) 19:22:00.59ID:+sJHqm0v0 >>288
この例ではpを表示してるのは確認の為で主目的ではないね
プロパティはクラスのフィールドみたいな物
フィールドはクラスの変数で、寿命はクラスを作ってから破棄まで
例えば、個人情報のクラスなら住所や電話番号がフィールド
いくつかの理由でフィールドに直接アクセスするのは良くないとされている
つまり
✕personal.phone=09012345678とかnum=personal.phone
○personal.SetPhone(09012345678)やnum=personal.GetPhone()
でも下の表記はクラス側にSetxxx/Getxxxを書かなくてはならず詰まらないコード量が増える
そこでC#は呼出側は上の記述が使え、クラス内では最低限のコード量で書くプロパティが考案された
この例ではpを表示してるのは確認の為で主目的ではないね
プロパティはクラスのフィールドみたいな物
フィールドはクラスの変数で、寿命はクラスを作ってから破棄まで
例えば、個人情報のクラスなら住所や電話番号がフィールド
いくつかの理由でフィールドに直接アクセスするのは良くないとされている
つまり
✕personal.phone=09012345678とかnum=personal.phone
○personal.SetPhone(09012345678)やnum=personal.GetPhone()
でも下の表記はクラス側にSetxxx/Getxxxを書かなくてはならず詰まらないコード量が増える
そこでC#は呼出側は上の記述が使え、クラス内では最低限のコード量で書くプロパティが考案された
307デフォルトの名無しさん (スププ Sd1f-+vzQ)
2021/06/11(金) 19:52:45.88ID:95OnglC4d 以前は{ get; set; }って記述は出来なかったよね。
必ずprivateの保存先に読み書きしたり、なんかロジックとか固定値で値を返したり。
さらにラムダ式とか多様な定義が出来るようになったから、着いていけない人も居るのかも。
自分も自信ない。無駄な書き方してないだろうかと。
必ずprivateの保存先に読み書きしたり、なんかロジックとか固定値で値を返したり。
さらにラムダ式とか多様な定義が出来るようになったから、着いていけない人も居るのかも。
自分も自信ない。無駄な書き方してないだろうかと。
308デフォルトの名無しさん (ワッチョイ 632f-JlJp)
2021/06/11(金) 20:13:06.43ID:rguC8k2o0 ここは
>「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」
だからな
>>288は、まずプロパティという概念を理解できているのか?
そしてそれがC#ではどのように実装されるのかを理解できているのか?
(今のC#のプロパティにはいろんな書き方ができるのでわかりにくい)
その上でフィールドとの使い分けなら
クラスの外部に公開するものはプロパティにする
単純に値を格納するだけのもの以外はプロパティにする
が基本方針だと思えばいい
>「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」
だからな
>>288は、まずプロパティという概念を理解できているのか?
そしてそれがC#ではどのように実装されるのかを理解できているのか?
(今のC#のプロパティにはいろんな書き方ができるのでわかりにくい)
その上でフィールドとの使い分けなら
クラスの外部に公開するものはプロパティにする
単純に値を格納するだけのもの以外はプロパティにする
が基本方針だと思えばいい
309デフォルトの名無しさん (ワッチョイ 73b0-t88l)
2021/06/11(金) 20:37:00.28ID:fG/j16u90 アルゴリズム云々じゃなくてとりあえずコーディングの練習したいときの手軽な問題って何があるかな?
今は競技プログラミングの簡単な問題を最近の記法使いつつ解いてるのだが他に何かあれば知りたいです
今は競技プログラミングの簡単な問題を最近の記法使いつつ解いてるのだが他に何かあれば知りたいです
310デフォルトの名無しさん (ワッチョイ 6333-ewEI)
2021/06/12(土) 00:34:16.72ID:5WmNz19V0 >>309
テトリスでいい
テトリスでいい
311デフォルトの名無しさん (ワッチョイ cfa7-xoS4)
2021/06/14(月) 11:10:57.15ID:pnoKn6oo0 Debugger.Breakメソッドってリリースビルドで落ちますか?
312デフォルトの名無しさん (ワッチョイ cfa7-xoS4)
2021/06/14(月) 11:30:41.88ID:pnoKn6oo0 とりあえず
Debugger.isAttachedで解決しました
Debugger.isAttachedで解決しました
313デフォルトの名無しさん (ワッチョイ ff05-W6T4)
2021/06/14(月) 20:09:02.57ID:BmiJqBp+0 株価チャートは作れますか?
314デフォルトの名無しさん (ブーイモ MMff-rmNT)
2021/06/14(月) 20:10:32.46ID:mg3Aqqn/M 作れるけど自分で使う用ならPythonの方がいいよ
315デフォルトの名無しさん (ワッチョイ e324-n7fE)
2021/06/14(月) 23:03:12.79ID:JUMQWHQ70 Python遅くない?
316デフォルトの名無しさん (ワッチョイ cf63-ncc4)
2021/06/15(火) 02:51:49.51ID:sfSEzJaG0 完成するまでの時間を考慮すればペイするよ
初心者がC#で完成させるのは不可能だから、速度はゼロだ
初心者がC#で完成させるのは不可能だから、速度はゼロだ
317デフォルトの名無しさん (スププ Sd1f-+vzQ)
2021/06/15(火) 06:00:09.68ID:KK4WQfQVd Pythonとjupyter notebookですぐに欲しい結果が出せるのが良いよね。
実効速度で比較する意味はないってことか。
実効速度で比較する意味はないってことか。
319デフォルトの名無しさん (テテンテンテン MM7f-rmNT)
2021/06/15(火) 09:42:34.43ID:7x06OJH8M そもそもグラフィカルなアプリは人間の知覚や操作がボトルネックになるので、単純なコードの実行速度にはあまり意味がない
320デフォルトの名無しさん (ワッチョイ cf68-8mgH)
2021/06/15(火) 22:28:24.77ID:YIKkkAYj0 アプリの設定情報の保存がイマイチよくわかってない自分。
321デフォルトの名無しさん (ワッチョイ bfbd-gv+s)
2021/06/15(火) 23:06:30.86ID:vcMBupBl0 <ブックリスト>
<アイテム id="11">
<タイトル>XML</タイトル>
<筆者>鈴木</筆者>
<カテゴリ>1</カテゴリ>
</アイテム>
<アイテム id="22">
<タイトル>WORD</タイトル>
<筆者>田中</筆者>
<カテゴリ>2</カテゴリ>
</アイテム>
</ブックリスト>
こんなxmlをID指定で読みたい。ID 22ならば、WORD、田中、2が得られるように。
調べると下のようなものが出てきました。指定で読み込みたいのでforeachでなく読んだ結果を直に欲しいです。(foreachの中身のような)
IEnumerable<XElement> infos = from item in xml.Elements("??") select item;
foreach (XElement info in infos){
info.Element("タイトル")
info.Element("カテゴリ)
}
指定で読むにはどうしたら良いですか?
<アイテム id="11">
<タイトル>XML</タイトル>
<筆者>鈴木</筆者>
<カテゴリ>1</カテゴリ>
</アイテム>
<アイテム id="22">
<タイトル>WORD</タイトル>
<筆者>田中</筆者>
<カテゴリ>2</カテゴリ>
</アイテム>
</ブックリスト>
こんなxmlをID指定で読みたい。ID 22ならば、WORD、田中、2が得られるように。
調べると下のようなものが出てきました。指定で読み込みたいのでforeachでなく読んだ結果を直に欲しいです。(foreachの中身のような)
IEnumerable<XElement> infos = from item in xml.Elements("??") select item;
foreach (XElement info in infos){
info.Element("タイトル")
info.Element("カテゴリ)
}
指定で読むにはどうしたら良いですか?
322デフォルトの名無しさん (ワッチョイ cf63-ncc4)
2021/06/16(水) 00:27:44.40ID:/wNWjCZd0 findByIdはないです
なんで無いのかは知らないです
実用性を無視した意味不明なこだわりを持ってるライブラリ設計者っていますけど、たぶんその類だと思いますね
別の言語ですがElementTreeの設計に関しても似たような後継を見ましたね
XMLは変な設計者を引きつけるのかも知れない
なんで無いのかは知らないです
実用性を無視した意味不明なこだわりを持ってるライブラリ設計者っていますけど、たぶんその類だと思いますね
別の言語ですがElementTreeの設計に関しても似たような後継を見ましたね
XMLは変な設計者を引きつけるのかも知れない
323デフォルトの名無しさん (ワッチョイ ffe6-U+vn)
2021/06/16(水) 00:34:43.94ID:5mM/xZpb0 XPathで一発じゃんか
Linqはコレクション向けの機能だからな
Linqはコレクション向けの機能だからな
324デフォルトの名無しさん (ワッチョイ cfa7-xoS4)
2021/06/16(水) 01:16:30.17ID:jt20Rl6v0325デフォルトの名無しさん (アウウィフ FF67-U3V2)
2021/06/16(水) 17:36:15.53ID:uJQ6HHCXF >>321
bs = BeautifulSoup(xml, features='lxml')
for item in bs.find(id='22'):
if type(item) != bs4.element.NavigableString:
print(item.text)
bs = BeautifulSoup(xml, features='lxml')
for item in bs.find(id='22'):
if type(item) != bs4.element.NavigableString:
print(item.text)
326デフォルトの名無しさん (ワッチョイ cf63-ncc4)
2021/06/16(水) 18:57:39.81ID:/wNWjCZd0 bsのfindはリストやシーケンスを返さないよ(Tag or Noneを返す)
よってTypeErrorで動かない
よってTypeErrorで動かない
327デフォルトの名無しさん (ワッチョイ 232c-W6T4)
2021/06/16(水) 21:45:08.91ID:6jJilgqa0 Ruby, Nokogiri では、XML もHTML のように使える。
CSS セレクターも使える
require 'nokogiri'
doc = Nokogiri::XML(<<EOT)
<root><books>
<book id="1">
<title>one</title>
</book>
<book id="2">
<title>two</title>
</book>
</books></root>
EOT
element = doc.at_css( "#2" )
puts element.at( "title" ).content #=> two
CSS セレクターも使える
require 'nokogiri'
doc = Nokogiri::XML(<<EOT)
<root><books>
<book id="1">
<title>one</title>
</book>
<book id="2">
<title>two</title>
</book>
</books></root>
EOT
element = doc.at_css( "#2" )
puts element.at( "title" ).content #=> two
328デフォルトの名無しさん (ワッチョイ 8f67-MHI0)
2021/06/16(水) 23:24:04.21ID:nxmBk19h0 初心者だけどVBAのノリでgosub return使おうとしてコンパイラにエラー出されて悩んだ
goto使えるんならこっちも使えてもいいじゃん
goto使えるんならこっちも使えてもいいじゃん
329デフォルトの名無しさん (ワッチョイ cfbb-khlo)
2021/06/16(水) 23:38:57.75ID:5dGb7KxN0 >>321
var doc = XDocument.Load("BookList.xml");
var item = doc.XPathSelectElement("//booklist/item[@id='22']");
Console.WriteLine(item.Element("title"));
var doc = XDocument.Load("BookList.xml");
var item = doc.XPathSelectElement("//booklist/item[@id='22']");
Console.WriteLine(item.Element("title"));
330デフォルトの名無しさん (アウアウウー Sa67-tjD1)
2021/06/17(木) 00:41:59.71ID:3qVDU9gDa331デフォルトの名無しさん (ワッチョイ 0389-9wAC)
2021/06/17(木) 03:03:58.98ID:ZAUwj7CW0 質問失礼いたします。
0.5秒間隔に、3回連続で2枚の画像を交互に表示させたいのですが、2つ目の画像しか表示されません。
開発環境はVisual Basic Studio、言語はC#です。
プログラムは下記の通りです。
どうぞよろしくお願いいたします。
private void button1_Click(object sender, EventArgs e)
{
Timer timer = new Timer();
timer.Interval = 500;
timer.Start();
int count = 0;
pictureBox1.ImageLocation = @"ファイル名";
pictureBox1.ImageLocation = @"ファイル名";
if (count < 3)
{
count++;
}
else
{
MessageBox.Show("終了");
timer.Stop();
}
0.5秒間隔に、3回連続で2枚の画像を交互に表示させたいのですが、2つ目の画像しか表示されません。
開発環境はVisual Basic Studio、言語はC#です。
プログラムは下記の通りです。
どうぞよろしくお願いいたします。
private void button1_Click(object sender, EventArgs e)
{
Timer timer = new Timer();
timer.Interval = 500;
timer.Start();
int count = 0;
pictureBox1.ImageLocation = @"ファイル名";
pictureBox1.ImageLocation = @"ファイル名";
if (count < 3)
{
count++;
}
else
{
MessageBox.Show("終了");
timer.Stop();
}
332デフォルトの名無しさん (ワッチョイ 6f62-Lkk5)
2021/06/17(木) 05:52:30.68ID:8FKshyx30 >>331
何が悪いとかのレベルじゃない
特定の行でF9でブレークポイントが設定できデバッグ実行を止めることができる
その後F10で一行ずつデバッグ実行を進めることができるから想定している動きになってるか確認することから始めた方がいい
何が悪いとかのレベルじゃない
特定の行でF9でブレークポイントが設定できデバッグ実行を止めることができる
その後F10で一行ずつデバッグ実行を進めることができるから想定している動きになってるか確認することから始めた方がいい
333デフォルトの名無しさん (スププ Sd1f-+vzQ)
2021/06/17(木) 05:54:28.97ID:Y5lXnysMd >>328
特定の処理を呼んで返したいなら、メソッドに切り出せば良いんじゃないのかな。
特定の処理を呼んで返したいなら、メソッドに切り出せば良いんじゃないのかな。
334デフォルトの名無しさん (アウアウウー Sa67-tjD1)
2021/06/17(木) 15:21:46.42ID:WS39elSMa >>331
private bool mIsBusy = false;
private async void StartSlideShow()
{
if (mIsBusy) return;
mIsBusy = true;
var dir = @"C:\Windows\Web\Wallpaper\Theme2";
var names = new[] { "img7.jpg", "img8.jpg", "img7.jpg", "img8.jpg", "img7.jpg", "img8.jpg" };
foreach (var name in names)
{
var path = System.IO.Path.Combine(dir, name);
pictureBox1.ImageLocation = path;
await Task.Delay(500);
}
mIsBusy = false;
}
private bool mIsBusy = false;
private async void StartSlideShow()
{
if (mIsBusy) return;
mIsBusy = true;
var dir = @"C:\Windows\Web\Wallpaper\Theme2";
var names = new[] { "img7.jpg", "img8.jpg", "img7.jpg", "img8.jpg", "img7.jpg", "img8.jpg" };
foreach (var name in names)
{
var path = System.IO.Path.Combine(dir, name);
pictureBox1.ImageLocation = path;
await Task.Delay(500);
}
mIsBusy = false;
}
335デフォルトの名無しさん (ワッチョイ 9342-khlo)
2021/06/17(木) 16:07:14.40ID:tBktLRON0 >>330
いや、寧ろGoSub使わずに一つのサブルーチンにすべてを書くやつがコボラーの亡霊です
いや、寧ろGoSub使わずに一つのサブルーチンにすべてを書くやつがコボラーの亡霊です
336デフォルトの名無しさん (ワッチョイ 03e3-nisE)
2021/06/17(木) 16:09:36.15ID:4w07t7GO0 ローカルメソッドはどうなんだろうね
外出せばいいじゃん派と他で使わないならローカルにしとけよ派で争うのかな
外出せばいいじゃん派と他で使わないならローカルにしとけよ派で争うのかな
337デフォルトの名無しさん (ワッチョイ a3e4-FyPE)
2021/06/17(木) 16:59:01.31ID:ooZzmu2N0338デフォルトの名無しさん (ワッチョイ 0fde-ZikL)
2021/06/17(木) 21:24:02.95ID:gnGFQr/W0 >>334
原型とどめてなくてわろす、でもそうじゃないんだ
原型とどめてなくてわろす、でもそうじゃないんだ
339デフォルトの名無しさん (ワッチョイ f6da-Y04N)
2021/06/18(金) 08:14:42.61ID:CeuVWc4D0 if (mIsBusy)と returnの間にスレッドが割り込まれたら複数動いちゃうんじゃね・・。
340デフォルトの名無しさん (ワッチョイ 3e7c-meyV)
2021/06/18(金) 09:03:58.05ID:kks5fFRD0 StartSlideShowはUIスレッドでしか呼び出されない前提だから問題ないよ
341デフォルトの名無しさん (ワッチョイ 0b01-N7Uk)
2021/06/18(金) 12:12:31.58ID:wj2zORhF0 他人のコードにケチつけずにはいられない、嫌われる人。
■ このスレッドは過去ログ倉庫に格納されています
