C#, C♯, C#相談室 Part98 (518レス)
前次1-
抽出解除 レス栞

43: デフォルトの名無しさん (ワッチョイ 27b3-0xUn) [sage] 2024/09/04(水) 21:50:02.76 ID:Gc+g798x0(1) AAS
>>41-42
ありがとうございます。解決しました。
プロジェクトじゃなくて、プロジェクトが参照してるライブラリが古くて画像周りがおかしかったことが原因でした……
いやーてっきりプロジェクトに問題があるものだとばかり。
お手数をおかけして申し訳ありませんでした。
45: デフォルトの名無しさん (ワッチョイ e731-g3wY) [sage] 2024/09/05(木) 22:47:08.76 ID:oSzSq1tU0(1) AAS
>>44
44(2): デフォルトの名無しさん (ワッチョイ 0701-cMiB) [] 2024/09/05(木) 22:43:12.04 ID:IsSxmn+e0(1/3) AAS
string のなかに " いれたいんだができるん?

string x=""+"aaaa"+"" 
こういうこと?
string x = "\"+\"aaaa\"+\"";
226: デフォルトの名無しさん (ワッチョイ 6714-oAsD) [sage] 2024/12/13(金) 01:16:53.76 ID:sFncMVeV0(1) AAS
>>203
203(2): デフォルトの名無しさん (ワッチョイ 476d-Ahcx) [] 2024/12/11(水) 23:21:13.31 ID:uq+uLBFl0(2/2) AAS
インターフェース分離の原則が分からない
「必要のない振る舞いを実装しない」のは適切だと思うんだけど、ポリモーフィズムとの組み合わせが悪いように思う

interface IBird { string Name { get; } }
interface IFlyable { void Fly(); }

// ペンギンは飛べないので IFlyableを実装しない
class Pengin : IBird { ... }
class Eagle : IBird, IFlyable { ... }

のようにした場合に、プログラムが List<IBird> birds のような形でデータを持つと、「飛べる鳥がいる」という情報が型から消える

foreach (IBird bird in birds) {
 Console.write(bird.Name);
 if (bird is IFlyable flyable) {
  flyable.Fly();
 }
}

「飛べる鳥なら飛ばす」ようにしたい場合、インターフェースを分離する場合だと上記のように is でキャストするしか無さそう?
IBirdで扱っているのに「インスタンスは IFlyable である可能性がある」という情報に依存してるのに少し違和感があって、より綺麗な解決策があれば知りたい
インターフェース分離の原則は「クラスが必要としないメソッドを実装しない」ってだけ
ペンギンのような飛べない鳥が IFlyable を実装しないのは正しい
あとは「飛べる鳥」をインターフェースで分かるようにしてやればいい
isを使う羽目になったのは飛べるかどうかわからない IBirdをListにしてるから
---
interface IBird { string Name { get; } }
interface IFlyable : IBird { void Fly(); }
// ペンギンは飛べない
class Penguin : IBird {
public string Name => "Penguin";
}
// ワシは飛べる
class Eagle : IFlyable {
public string Name => "Eagle";
public void Fly() => Console.WriteLine($"{Name} is flying!");
}
// 飛べる鳥だけを扱うリストを作る
List<IFlyable> flyableBirds = new List<IFlyable> { new Eagle() };
foreach (var bird in flyableBirds) {
bird.Fly(); // 明示的に飛べる鳥しか扱わない
}
265: デフォルトの名無しさん (ワッチョイ 8f5d-/DxF) [sage] 2024/12/21(土) 17:53:08.76 ID:BdmznDtW0(1/2) AAS
>>264
264(1): デフォルトの名無しさん (ワッチョイ be10-Xxs2) [sage] 2024/12/21(土) 11:42:21.51 ID:4NNdAFL10(1/2) AAS
終わらないPS談義
お前がC#の話題振ってくれりゃ乗るよ
早くしろよ
270: デフォルトの名無しさん (ワッチョイ a301-28Ti) [sage] 2024/12/21(土) 23:39:03.76 ID:L6mtJxlH0(1) AAS
jsonは2だったり4だったりまちまちだけどね
343: デフォルトの名無しさん (ワッチョイ 7f10-z3tz) [sage] 2025/04/16(水) 20:47:35.76 ID:JiAmFx7+0(1) AAS
refじゃあかんの?
441
(2): デフォルトの名無しさん (ワッチョイ c94b-vIW/) [] 2025/08/19(火) 06:42:55.76 ID:t5qgmbmq0(1/2) AAS
GPS受信機側がどうやって精密に位置情報ゲットしてアプリ作れてるか考えりゃ
言語に関係ないってわかるだろうに・・・
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 1.125s*