ふらっと C#,C♯,C#(初心者用) Part135

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 8b75-uWnk)
垢版 |
2018/02/04(日) 22:02:28.59ID:FbKpa1HN0
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください

>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■前スレ
ふらっと C#,C♯,C#(初心者用) Part134
http://mevius.5ch.net/test/read.cgi/tech/1511951038/
■関連スレ
C#, C♯, C#相談室 Part95
http://mevius.5ch.net/test/read.cgi/tech/1508180530/
C#, C♯, C#相談室 Part93
https://mevius.5ch.net/test/read.cgi/tech/1492818720/

■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/

■情報源
https://msdn.microsoft.com/ja-jp/library/gg145045.aspx
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/index
https://msdn.microsoft.com/en-us/library/gg145045.aspx
http://referencesource.microsoft.com/
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
208デフォルトの名無しさん (ワッチョイ e1eb-5/Jh)
垢版 |
2018/02/08(木) 15:08:58.18ID:JTkprNeY0
無駄なメモリの確保を防ぎつつ、フィールドのスコープを限定する方法を教えてください

現在、このようなメソッドを用意して秒間300回程度と頻繁に呼び出しています
void A(){
byte[] data = new byte[1024];
//dataに書き込む処理省略
}
しかし、私の行う用途にでは、呼び出しのたびにdataの配列分確保するのは無駄で、前回の使い回しで十分なんです
dataをメソッドの外で宣言しメモリの確保もすればいいのかもしれませんが、スコープが広がってしまいます(すでに書いてしまったコードがdataという名前のフィールドだらけで収拾がつかなくなっています)
何か手軽に無駄なメモリ確保を防ぐ方法は無いのでしょうか?
よろしくお願いします
2018/02/08(木) 15:19:58.53ID:XaQu4uN/0
static
2018/02/08(木) 15:34:43.45ID:OcC2yENka
>>208
VBにはインスタンスと同じ寿命でスコープだけメソッドの変数があるけどC#にはありまへん。
意味があると思えんけど、ラムダ式のキャプチャを利用して、byte[]ではなくFunc(byte[]>のフィールドを持つとか。

まあ、そういう馬鹿馬鹿しいこだわりを捨てて、素直にbyte[]のフィールドを持つのが一番でしょう。
211恥人
垢版 |
2018/02/08(木) 15:45:33.68
>>196
常時更新ってC#のコードでDOM操作するってこと?
2018/02/08(木) 16:39:22.84ID:Kmo7gsHqM
>>208
どうせ初心者のうちに書いたコードなんて後で全部捨てて書き直すことになるんだから余計なこと気にしなくてよろしい
213デフォルトの名無しさん (ワッチョイ 2260-wuSi)
垢版 |
2018/02/08(木) 16:39:44.59ID:NS8cMe+I0
この間のwin10のアップデートでwebbrowserの挙動に何か変化有りませんでしたか?
214デフォルトの名無しさん (ササクッテロレ Spf1-ST63)
垢版 |
2018/02/08(木) 17:48:49.85ID:2nTnRFgHp
>>207
変換出来ませんと表示させるコードを書けば、解決策が見つかると言う意味で解釈したらいいですか?

変換出来ませんと表示させるコードを書く理由が分からないので教えてもらえると助かります。
215恥人
垢版 |
2018/02/08(木) 17:50:05.38
ワロタ
216デフォルトの名無しさん (ササクッテロレ Spf1-ST63)
垢版 |
2018/02/08(木) 17:53:07.66ID:2nTnRFgHp
>>211
これがDOM操作と言うのか私には分かりませんが、
ウェブサイトに表示されている、リアルタイムで変化している数字を読み取って比較して表示するという操作がしたいって事です
2018/02/08(木) 17:57:58.17ID:rH5InDMMM
>>208
そのままでもいいなでは?

一応解決法

外で適当な名前でフィールドを確保
static byte[] buffer= new byte[1024];

中でそれを参照
byte[] data=buffer;
2018/02/08(木) 18:07:28.71ID:rH5InDMMM
>>216
そもそも何を使ってスクレイピングしてるかすら書いてないから
みな困惑している

seleniumなんだろうけど
219デフォルトの名無しさん (ササクッテロレ Spf1-ST63)
垢版 |
2018/02/08(木) 18:11:56.95ID:2nTnRFgHp
>>218
申し訳ない
seleniumでphantomjs driverです
2018/02/08(木) 18:12:19.29ID:rH5InDMMM
仮にの話だけど

自分でリフレッシュ(再送信要求)してないのに値が変わってるなら
サイトがjavascriptで値を書き換えてるんだろうからDoS攻撃にはなってない
2018/02/08(木) 18:29:54.13ID:XaQu4uN/0
>>217
外じゃないと駄目だっけ?
中でよくね?
2018/02/08(木) 18:35:48.21ID:rH5InDMMM
cと勘違いしてるだろ
2018/02/08(木) 18:53:26.96ID:XaQu4uN/0
>>222
動作違うのけ?
2018/02/08(木) 19:01:05.76ID:K4fxlDLAM
>>205
どう客観的に判断してもおまえの方が頭おかしいだろ
2018/02/08(木) 19:02:24.64ID:K4fxlDLAM
>>216
サイバーテロだから基本をマスターするまで止めろ
2018/02/08(木) 19:07:12.06ID:8qhKGghxM
>>204
ちょっとそれるが
> if ((true == double.TryParse(B, out double valueB))
って書く人がたまにいるけどなんで不要な true == をいちいち書くんだろう?
2018/02/08(木) 19:10:37.15ID:HksZ1obU0
>>226
説明的コード
228デフォルトの名無しさん (ワッチョイ 99b3-ST63)
垢版 |
2018/02/08(木) 19:17:49.11ID:2Quw3/HN0
>>204
これでいけました
ありがとうございます
2018/02/08(木) 19:21:39.99ID:rH5InDMMM
>>226
英語に不慣れだからかな…

if(cat.IsAnimal==true)
if(true==cat.IsAnimal)

俺は気持ち悪いのでそういう使い方はしない
がnull許容型だと強制されるので非常に不快
2018/02/08(木) 19:28:45.93ID:rH5InDMMM
日本語で見るとbe動詞が不格好だな

は動物プロパティ

if(猫.は動物)
if(田中誠.は動物)
2018/02/08(木) 19:56:58.37ID:pB3FNlLq0
>>228
図書館事件よく読んどけ
逮捕されたくなかったらな。
2018/02/08(木) 21:04:14.05ID:+n10mrf5a
>>226
本当は分かってるんでしょ?w
人が悪いよ

たぶんデリゲートやラムダ式に拒否反応を示す人の思考回路と同じ。
値って考え方が呑み込めてないんだと思う。
233恥人
垢版 |
2018/02/08(木) 21:06:28.03
>>230
isって「である」じゃないのけ?
234デフォルトの名無しさん (アウアウカー Sa69-Xwku)
垢版 |
2018/02/08(木) 21:07:27.62ID:iBuunKtKa
Is〜もやれやれってため息つくよな
2018/02/08(木) 21:21:20.99ID:915zsRTA0
>>226
ごめんね
2018/02/09(金) 06:50:10.99ID:Oqb9O2xfM
>>233
This is a pen.
これはペンである。

うん、間違ってないな w
2018/02/09(金) 07:59:47.67ID:P5bFhw7XM
>>226
設計者が悪い
〜が真の場合〜する
これをコードにするとブーリアンとの比較になる
〜の場合
ならブーリアンとの比較にならない
2018/02/09(金) 08:08:26.68ID:XPAWz2Uc0
わたしのことでけんかしないで
( ;∀;)
2018/02/09(金) 09:40:28.56ID:/RflGba8d
>>226
trueとfalseを=で書く、falseだけ=で書く、falseだけ!で書く
どれでもいいけど!を使いたくないって話はよく聞くな
falseを=で書くならtrueも同じ様に書いた方が見やすいかもね
2018/02/09(金) 09:46:12.82ID:XMMaiogJ0
VS2013からVS2017で、
C#のWinForm的には何か大きく変わりましたか?
WPFやUWPやXamarinは使わないです
2018/02/09(金) 11:00:06.20ID:fIXFpK3Ia
if(a==true) if(a==false) ははっきり言ってダメなやり方
たとえば b!=’1’の結果としてaがあった場合
aには充分な論理的結果が入っているのに
それを比較してる

つまり
if(b != '1')
bが'1'でないならを
if((b !=' 1') == true)
bが’1'でないが真なら としてる

無駄に条件比較の次元が増えてる
2018/02/09(金) 11:18:11.85ID:XPAWz2Uc0
ってことよ。
言語仕様で保証されてるから

ってもうええやろ
2018/02/09(金) 12:40:19.33ID:Un6XU7IsM
>>240
はるか昔に開発終わってるから何も変わってないよ
今のVSでアグレッシブに開発進んでるのってプラットフォームでいえばWeb関係でCoreとかAzure、
VS自体の機能でいえばチームコラボレーション系がメイン
もはや昔ながらのクライアントアプリ開発者には何の恩恵もない代物
2018/02/09(金) 12:55:39.76ID:Un6XU7IsM
あと、日々のマイナーアップデートで平気でC#の言語のバージョンが上がるという、昔のMSからするとありえないことをやってる
プロダクトを自己責任で軽いノリでリリースできるような事業形態の組織なら、
ある日突然新しい構文が使えるようになったりして楽しいからVS2017に移行する価値はあるよw
2018/02/09(金) 13:29:03.11ID:HaVaZvGAa
>>237
それも違うというか、まさにそういう考え方をする人が>>226みたいな書き方をするんだと思うw
ifを○○なら××する、みたいな条件判断だと考えると、○○の箇所に比較演算子を書きたくなっちゃう。
(だからBASIC上がりの人はこういうコードを書きたがる)

逆にifなんて実態は機械語のJZ(Jump if Zero)で、要するに単に値を評価して分岐するだけ、
って考えると>>226みたいな書き方見るとなんじゃこりゃって思っちゃう
2018/02/09(金) 13:36:54.05ID:oYoiHq1LM
最近コードの自動生成をよくする
falseのときは書いて
trueのときは書かないとかやってねぇからtrue==は出る
同じノリだろ
2018/02/09(金) 13:59:22.67ID:XMMaiogJ0
>>243-244
なるほど、ただのクライアントアプリだけなら関係ないのですね
新しい構文を勝手に使うとたまに怒られるので、止めておきますw
2018/02/09(金) 14:30:07.84ID:h6aWYpFC0
bool?使うとtrue==は書かざるをえないんだよね。使いみちは限られるがUWPのx:Bindでbool?使わざるを得なかったりする
2018/02/09(金) 15:38:49.43ID:BbZWe4RQM
>>248
bool? は if (x ?? false) の方がスマート
2018/02/09(金) 18:08:05.87ID:boHsluDEM
>>245
プログラマは考えてはいけない
どんなにおかしなプログラムになっても設計書の通りに書くことが大切
製品の品質より方法論や会社のルールを優先しよう
それがサラリーマンのあるべき姿だよ
2018/02/09(金) 18:19:12.75ID:b+4e2jxgd
サラリーマンプログラマらしいレスなのねん。
2018/02/09(金) 20:20:41.17ID:TwVCAmtId
サンデープログラマ
2018/02/09(金) 20:39:08.80ID:EQhMg6az0
戦うサンデープログラマーっていうポッドキャストがあってだな
2018/02/09(金) 21:56:26.91ID:I0pHcAAD0
単純にa==trueって書くときa=trueっていうミスしたときに発見難しいけど
true==aって書くようにしてたらtrue=aってミスしてもコンパイル通らないから見つけやすいよねってだけじゃないの?
昔客先常駐でIT土方してた先輩はそう言ってた
255恥人
垢版 |
2018/02/09(金) 21:57:48.11
アスペかよ
2018/02/09(金) 22:22:38.32ID:lhoyckc/0
>>254
今のIDE使っている人達にしてみたら何を言ってるのかわからん言葉だなw
2018/02/09(金) 23:44:22.11ID:Duwvp4uk0
土方の話はいいよ
穴掘って叫んでて
258デフォルトの名無しさん (ワッチョイ 62e0-jA6l)
垢版 |
2018/02/10(土) 05:04:14.37ID:aLYixKao0
日経ソフトウェア買ったよ!
259デフォルトの名無しさん (ワッチョイ 319d-+g9t)
垢版 |
2018/02/10(土) 08:55:01.53ID:agf4hW9w0
List<int> idata =new List<int> (){1,2,3,4,5,6};

foreach (var dt in idata)
{
dt = 0;
}
dt=0が代入できない。 idata[0]=0;は代入できる。これはどう考えたらいいんだ?
2018/02/10(土) 10:13:31.02ID:L0Z1niMi0
>>259
foreachで取ってきた要素はIEnumerator.Currentなので読み取り専用になる
261デフォルトの名無しさん (ワッチョイ 319d-+g9t)
垢版 |
2018/02/10(土) 10:58:14.53ID:agf4hW9w0
しかしLinqのForeachならセットできる。
2018/02/10(土) 11:06:54.61ID:h94azKRjM
できたとしてもそもそもdtは値のコピーなのでセットできてもListの値は書き変わらない
263デフォルトの名無しさん (ワッチョイ 319d-+g9t)
垢版 |
2018/02/10(土) 11:08:07.90ID:agf4hW9w0
List<Label> lbl = new List<Label>() { new Label(), new Label ()};
lbl.Add (new Label() );
foreach(var l in lbl) {
l.Text = "aaaa";
}
これはできるけど。
264デフォルトの名無しさん (ワッチョイ 319d-+g9t)
垢版 |
2018/02/10(土) 11:14:08.02ID:agf4hW9w0
List<clsint> idata = new List<clsint>();
foreach (var i in idata)
{
i.val = 123;
} class clsint{ public int val;}
これもできるけど。
2018/02/10(土) 11:15:02.53ID:h94azKRjM
dtが値型でも参照型でもコピー

参照型はアドレスがコピーされてるので
参照先のオブジェクトの書き換えが有効

値型は値自身がコピーされているので元の値に影響しない
2018/02/10(土) 11:15:51.97ID:h94azKRjM
これは初心者が勉強したら理解できる内容なので
勉強しなさい
2018/02/10(土) 11:18:07.39ID:h94azKRjM
初心者脱出がレベル20だとしたら今のforeachの件はレベル5ぐらい
2018/02/10(土) 11:19:27.25ID:h94azKRjM
ちゃんとした入門書をちゃんと読んで学習したらレベル10ぐらいは行く
2018/02/10(土) 11:22:26.94ID:h94azKRjM
残念だね
ちゃんと本でも読んでコードを書いてたらレベル10に到達するのに
勉強してるつもりになってふらふらしてるからレベル5
270デフォルトの名無しさん (ワッチョイ 319d-+g9t)
垢版 |
2018/02/10(土) 11:42:19.85ID:agf4hW9w0
>foreachで取ってきた要素はIEnumerator.Currentなので読み取り専用になる

参照型もIenumerator.Currentなのか?
なぜ読み取り専用でもライトできるのか?
2018/02/10(土) 11:47:11.44ID:oEqOo86Y0
読み取り専用はフィールドまで伝播しませんので
2018/02/10(土) 11:49:38.24ID:h94azKRjM
ここでクダ巻いてないで勉強したらいいのに

自分より出来る人に突っかかってもいいことないのに
273デフォルトの名無しさん (ワッチョイ 319d-+g9t)
垢版 |
2018/02/10(土) 11:53:29.42ID:agf4hW9w0
>>271
なるほど!! 
2018/02/10(土) 11:54:13.36ID:h94azKRjM
メソッド内の変数書き換えとかも理解してなさそう
275恥人
垢版 |
2018/02/10(土) 12:07:40.93
>>272 >>274
グチグチうるせえな
2018/02/10(土) 12:14:30.61ID:h94azKRjM
わかった
ぐちぐちはやめよう

>>263
>>264
この2つともListの中身は変わっていないと言うことはわかるかな?
277デフォルトの名無しさん (ワッチョイ 3151-xK0a)
垢版 |
2018/02/10(土) 12:29:08.56ID:PglyRkoG0
読み取り専用の参照型の変数は参照は書き換えられないが、その参照を得ればそれが指し示す実体を読み書きできる
2018/02/10(土) 12:35:19.58ID:h94azKRjM
Listは中に追加された値を保存してる

intとかの値型はその値自身を持ってる
クラスとかの参照型は対象になるクラスへの参照が入ってる

そのListの中にある参照先自体は変わってない

>>273
残念だけどその内容になるほどというとドツボにはまる
classじゃなくてstructにするとフィールドまで書き換えできないと気づく

フィールドに波及しないと言うのは誤った理解
2018/02/10(土) 12:41:02.28ID:h94azKRjM
こんなところで怪しい回答に頼るより
しっかりした実績のある入門書に頼ったほうがいいよ

マジで

誰だってその時々で間違うし

本の時代は終わったなんていう奴がいるけど
webだけじゃ網羅的に勉強しづらい
2018/02/10(土) 12:41:58.21ID:7Yj567YX0
いいじゃん誤った理解で
馬鹿は痛い目みないと治らないから
ぜひ痛い目みて貰おうぜ
281デフォルトの名無しさん (ワッチョイ 319d-+g9t)
垢版 |
2018/02/10(土) 13:07:19.11ID:agf4hW9w0
foreach (var dt in idata)
{
dt = dt < min ? min : max < dt ? max : dt;
}
みたいなことができない。これはよくあるケースなので不便。
282デフォルトの名無しさん (ワッチョイ 319d-+g9t)
垢版 |
2018/02/10(土) 13:11:16.15ID:agf4hW9w0
>しっかりした実績のある入門書に頼ったほうがいいよ

最近2冊ほど読んだけど、細かいところはやってみないとわからないよ。読んだだけでは無理。
なれが必要だ。で慣れるためにコードを書く。しかしサッパリ動かない。w
283デフォルトの名無しさん (ワッチョイ 319d-+g9t)
垢版 |
2018/02/10(土) 13:15:58.33ID:agf4hW9w0
//パラメータをシングルトンで持たせたいのだが、Jsonで格納しようとするとstaticにできない。なので
referenceを返したいのだが、何かいい方法はない?

class Singleton
{
private Singleton(){}
public static Singleton getInstace() {
return SingletonHolder.INSTANCE;
}
private static class SingletonHolder {
public static Singleton INSTANCE = new Singleton();
}

たとえば教科書にあるシングルトン。これに
class clsGrovalParam
{
public int value1;
public int value2;
public int value3;
}
public clsGrovalParam Param;
とやってParamを追加していたが、なんか動作がおかしい。W
と思ったらPublicにしていたので直接Paramを生成していてシングルトンになってなかった。

 .Param
こいつをStaticにできればいいのだが、Jsonで格納するときにスタティックにすると格納できない。
2018/02/10(土) 13:27:26.20ID:h94azKRjM
また伝わらない書き方だなあ
Jsonとはなんなのか?stringなのか?typeだとしてどのJsonなのか?
2018/02/10(土) 13:30:10.75ID:S1subAI+M
>>283
そのレベルのことは一通り基礎を終えれば分かるから、今はソースに直にstaticで書いとけ
言っちゃ悪いけど、まだ設定の外部化なんか考えるようなレベルじゃない
シングルトンも忘れていい
2018/02/10(土) 13:32:00.29ID:h94azKRjM
参照型と値型を区別できないと普通に困るよ
そのたびにここで質問するの?

俺はc#の仕様が面白かったので入門書みたいのを10回以上読んだ
delegateとかeventとか他にはなかったから刺激的だった
287デフォルトの名無しさん (ワッチョイ 319d-+g9t)
垢版 |
2018/02/10(土) 13:37:02.28ID:agf4hW9w0
>シングルトンも忘れていい

グローバル変数を散らばらせるとなかなか大変になるので、ここは最初に抑えること。
別にシングルトンでなくてもいいが、、スタチックはJson.netに保存できないので仕方なしに
調べていたらシングルトン。ほんまにトンだよな。たったこれだけのことに頭を
悩ませないといかんとは。
2018/02/10(土) 13:38:27.41ID:h94azKRjM
>>287
君は5かける3はと言われて
1から順に数字を答えてる状態にしか見えないんだけど
289デフォルトの名無しさん (ワッチョイ 319d-+g9t)
垢版 |
2018/02/10(土) 13:40:22.73ID:agf4hW9w0
>参照型と値型を区別できないと普通に困るよ そのたびにここで質問するの?

いままさにこれに困っている。そこでプロパティにしたらどうなの?って実験してみようと思っている。
private clsGrovalParam _Param = new clsGrovalParam() {value1 = 1};

public clsGrovalParam Param
{
get { return _Param; }
set { Param =_Param ;}
}
290デフォルトの名無しさん (ワッチョイ 319d-+g9t)
垢版 |
2018/02/10(土) 13:41:47.03ID:agf4hW9w0
>>288
最初はそうでしょ。だれでも
2018/02/10(土) 13:43:20.18ID:h94azKRjM
>>290
違うよ

九九の5X3を覚える

君にはそれがない
2018/02/10(土) 13:48:03.17ID:h94azKRjM
5を3回足すとか3を5回たすとか考えたり
5X3を覚えるとかがない

1から数え上げていって9当たりで疲れて質問に来る
2018/02/10(土) 13:48:40.57ID:STtvgiYf0
算数スレ
2018/02/10(土) 13:53:43.90ID:2bX56Vysa
>>287
>グローバル変数を散らばらせるとなかなか大変になるので、ここは最初に抑えること
それはそもそもグローバル変数が多いこと自体が問題。
まともな設計が身に着けば自然に減る。
シングルトンは基本的にアンチパターンであり、初心者が積極的に使うものではない。
295デフォルトの名無しさん (ワッチョイ 319d-+g9t)
垢版 |
2018/02/10(土) 13:55:47.90ID:agf4hW9w0
>291
だめだよ。そういう覚え方は。最初は足と手の指を使って15までカウントする。
2018/02/10(土) 13:56:15.28ID:2bX56Vysa
初心者には紛らわしい物言いだったので補足
シングルトンはメンバも含めて実質すべてグローバル変数な
2018/02/10(土) 14:03:56.78ID:8juYsZ8V0
休みの昼間っから真っ赤にしてる奴にろくなのはいない
2018/02/10(土) 14:04:44.96ID:oqzsam8ba
やりたいことと実力のレベルに差があって
ちぐはぐしてるのは間違いない

例え15まで数えて正解しても次にはつながらないので
仕組みを理解してからのほうが良いのでは?
2018/02/10(土) 14:07:05.88ID:oqzsam8ba
仕組みが理解できない場合いくら手を動かしても得られるものはないんでは?
2018/02/10(土) 14:09:29.78ID:h94azKRjM
>>295
頑張ってpiの再発見でもしたらいい
2018/02/10(土) 14:11:45.16ID:HkD8Ulqu0
初心者はなんでも場当たり的に解決しようとするが、これは意識しないと気が付かない悪い癖
2018/02/10(土) 14:13:46.43ID:oqzsam8ba
仕組みを理解するために手を動かすのは正しい

仕組みを理解せずその場の答えを出すためにやみくもに手を動かすのは正しくない
303デフォルトの名無しさん (ワッチョイ 319d-+g9t)
垢版 |
2018/02/10(土) 14:16:21.43ID:agf4hW9w0
>295
細部はあまり関係ないと思う。
 ベテランはそういう細部をきにするが、要するにシングルトンで何をしたいのか? 
どう機能するものなのか?
それが大事なポイントじゃあるまいか。 名前の問題とか実装方法の問題じゃない。
別にシングルトンでなくてもいい。

ポイントはつまりアンチスパゲッティ。w

変数1,2、−−−100位は直ぐに散らばる。
これをまとめて一つにしておけば分かりやすい。まあ名前をまとめたところで参照は100か所に
なるから、どうしたって散らばるが、変更箇所は1か所にすることができる。それに括りの名前を付けて
おけばGrepできる。そういうメリットがある。ただそれだけのことだ。でもこれが大きい。
304デフォルトの名無しさん (ワッチョイ 319d-+g9t)
垢版 |
2018/02/10(土) 14:20:22.95ID:agf4hW9w0
要するにインスタンスを一個しか持たないクラスにまとめたグローバル変数。

その割に実現がややこしい。w
2018/02/10(土) 14:23:51.65ID:STtvgiYf0
この話いつまで続くの?
2018/02/10(土) 14:50:46.07ID:xv5r03JM0
>>305
NG使えば一瞬で
2018/02/10(土) 15:34:01.81ID:WFVVWPNp0
設定データをシングルトンでって時点で何かがおかしい
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況