teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

追記

2019/07/03 00:27

投稿

tuyudaku
tuyudaku

スコア75

title CHANGED
File without changes
body CHANGED
@@ -47,4 +47,9 @@
47
47
 
48
48
  よろしくお願いいたします
49
49
 
50
- ※質問が間違っていたため修正しました
50
+ ※質問が間違っていたため修正しました
51
+
52
+ ###追記
53
+ シンプルに文章が長くなりすぎないようにと考えて質問した結果
54
+ 本来やりたい事から離れてた上に、回答者さんにも混乱をあたえてしまうことになってしまったことをお詫びします。
55
+ 皆様回答ありがとうございました

1

間違いの修正

2019/07/03 00:27

投稿

tuyudaku
tuyudaku

スコア75

title CHANGED
File without changes
body CHANGED
@@ -1,41 +1,43 @@
1
1
  実装方法に悩んでいるので助言をお願いしたいです。
2
2
 
3
- 二つの関数があるとします
3
+ 引数で処理を分ける関数があるとします
4
4
  ```C++
5
- funcA
5
+ func(int tmp)
6
6
  {
7
+ if(0 == tmp)
8
+ {
7
- printf("A\n");
9
+ printf("A\n");
10
+ }
11
+ else
12
+ {
13
+ printf("B\n");
14
+ }
8
15
  }
9
-
10
- funcB
11
- {
12
- printf("B\n");
13
- }
14
16
  ```
15
17
 
16
18
  この二つの関数を、ある一つの関数を呼び出すだけで呼び出すたびに交互に処理をする関数を作成したいと思っています。
17
19
  ```c++
18
20
  func_call_AorB
19
21
  {
20
- // 前回がfuncBならfuncAを実行
22
+ // 前回がfunc(1)ならfunc(0)を実行
21
- // 前回がfuncAならfuncBを実行
23
+ // 前回がfunc(0)ならfunc(1)を実行
22
24
  }
23
25
  ```
24
26
 
25
- funcAfuncBを使うかどうかの設定値も持っており
27
+ func(0)func(1)を使うかどうかの設定値も持っており
26
28
  それによっても処理を分岐しなくてはなりません、片方が使用しない設定なら
27
29
  片方の関数を呼び続けるようにしたいです。
28
- 両方の設定がfalseになることはありません
30
+ 両方の設定がfalseになることはありません、また設定値は途中で変わることはありません
29
31
  ```C++
30
32
  func_call_AorB
31
33
  {
32
- if(true == use_A)
34
+ if(true == use_0)
33
35
  {
34
- // 前回の実行がfuncBfuncBを使わない設定ならfuncAを実行
36
+ // 前回の実行がfunc(1)、func(1)を使わない設定ならfunc(0)を実行
35
37
  }
36
- if(true == use_B)
38
+ if(true == use_1)
37
39
  {
38
- // 前回の実行がfuncAfuncAを使わない設定ならfuncBを実行
40
+ // 前回の実行がfunc(0)、func(0)を使わない設定ならfunc(1)を実行
39
41
  }
40
42
  }
41
43
  ```
@@ -43,4 +45,6 @@
43
45
  フラグを複数使ってごり押しのコードを書けば実現できそうなのですが
44
46
  できるだけスマートに書けないかと思い質問させていただきました
45
47
 
46
- よろしくお願いいたします
48
+ よろしくお願いいたします
49
+
50
+ ※質問が間違っていたため修正しました