[過去ログ] 【初心者歓迎】C/C++室 Ver.102【環境依存OK】 (1002レス)
上下前次1-新
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
898(2): デフォルトの名無しさん [] 2018/06/23(土) 16:46:26 ID:8e5n022B(1/7) AAS
デザインパターンって廃れたんですか?
だとすると、なぜ、デザインパターンは流行り、そして廃れたのでしょうか?
一度は流行ったということは確かに役に立つものだったのではないでしょうか?
一度は役に立つと認められたものがなぜ、否定されたのでしょうか?
909(2): デフォルトの名無しさん [] 2018/06/23(土) 19:24:24 ID:8e5n022B(2/7) AAS
2分探索木を実装したC++プログラムを読んでいますが、分からないところに出くわしました。
ノードは以下のクラスです:
template <typename T> class BinNode {
private:
T data;
BinNode<T> *left, *right;
BinNode(T d, BinNode<T> *l = NULL, BinNode<T> *r = NULL);
friend class BinarySearchTree;
};
2分探索木のクラス BinarySearchTree 内のメンバ関数 insert の引数としてノードを渡すのですが、
なぜ、
BinNode<int>* tree
ではなく
BinNode<int>*& tree
となっているのかが分かりません。本の説明によると、木構造の変形を可能にするためにそうしているとのことです。
bool BinarySearchTree::insert(int data, BinNode<int>*& tree) {
…
}
910: デフォルトの名無しさん [] 2018/06/23(土) 19:25:19 ID:8e5n022B(3/7) AAS
>>899>>900900(1): はちみつ餃子 ◆8X2XSCHEME [sage] 2018/06/23(土) 17:00:49 ID:/E9OfcV+(1) AAS
>>898
デザインパターンってのは典型的なパターン (に名前を付けたもの) ってだけだよ。
基礎として押さえておくと便利だし、価値が失われたわけではないけど、
何もかもが既存のパターンに当てはまるわけではないという当たり前の話。
>>902
ありがとうございました。
一時は、もてはやされすぎたということですね。
911: デフォルトの名無しさん [sage] 2018/06/23(土) 19:28:47 ID:8e5n022B(4/7) AAS
insert 内に、
if (tree == NULL) {
912(1): デフォルトの名無しさん [] 2018/06/23(土) 19:29:33 ID:8e5n022B(5/7) AAS
insert 内に、
if (tree == NULL) {
tree = new BinNode<int>(data);
…
}
というコードがありましたが、これのことでしょうか?
913: デフォルトの名無しさん [] 2018/06/23(土) 19:30:15 ID:8e5n022B(6/7) AAS
>>912
あ、そのようですね。
915: デフォルトの名無しさん [sage] 2018/06/23(土) 19:45:59 ID:8e5n022B(7/7) AAS
>>914914(1): 放置された蟻人間 ◆T6xkBnTXz7B0 [sage] 2018/06/23(土) 19:30:26 ID:QXtVRpnb(1) AAS
>>909
void f(int *a) {
static int s_i = 0;
a = &s_i;
}
int main(void) {
int i = 3;
int *p = &i;
f(p);
printf("%d\n", *p);
return 0;
}
ありがとうございました。
3のままですね。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.050s