No.3ベストアンサー
- 回答日時:
#1です。
関数の中に関数を書きたいと言うことですが、mylib().func1()、mylib().func2() のような感じにしたいと言うことでしょうか?もしそういうことであれば、C++を使ってみるのも良いかもしれません。
-------- サンプル ---------------------------------------
// ■ Sample.h
#pragma once
class Sample
{
public:
Sample(int x, int y);
public:
int Sum();
int Subtract();
private:
int x;
int y;
};
---------------------------------------
// ■Sample.cpp
#include "Sample.h"
Sample::Sample(int x, int y)
{
this->x = x;
this->y = y;
}
int Sample::Sum()
{
return x+y;
}
int Sample::Subtract()
{
return x-y;
}
---------------------------------------
// ■Main.cpp(Sampleを使う方法)
#include <iostream>
#include "Sample.h"
using namespace std;
void main()
{
// パターン1(スタック使用)
Sample s(10, 20);
cout << "Sum :" << s.Sum() << endl;
cout << "Subtract :" << s.Subtract() << endl;
// パターン2(ヒープ領域使用)
Sample* p = new Sample(10, 20);
cout << "Sum :" << p->Sum() << endl;
cout << "Subtract :" << p->Subtract() << endl;
delete p;
}
---------------------------------------
こんな感じで、Sampleクラスがfunc1()の代わりで、クラスの中にメンバ変数やメンバ関数を追加してゆけます。
No.2
- 回答日時:
>func1の中にfunc2を書きたい場合はどうすればよいのですか?
なぜそうしなければならないのかがさっぱりわからないのですが…
int func1()
{
...
func2()
...
}
static int func2()
{
...
}
という風にstaticの関数ではダメなのでしょうか。
とはいえ、それはそれとして、一応回答を。
C++では、ローカルクラスに関数を定義する方法でそれっぽいものが作れるようです。>参考URL
私はそこまでする必要性を感じないので、やったことはありませんが。
参考URL:http://www.fides.dti.ne.jp/~oka-t/cpplab-tips-1. …
No.1
- 回答日時:
関数の中に関数を書こうとしている箇所はありませんか?
--サンプル-------------------------------------
void func1()
{
int func2(){...} // 関数func1の中に、関数func2()は定義できません。
}
この回答への補足
その通りです。関数の中に関数を書いていました・・・
--サンプル-------------------------------------
void func1()
{
int func2(){...} // 関数func1の中に、関数func2()は定義できません。
}
例えば、このサンプルのようにfunc1の中にfunc2書きたい場合はどうすればよいのですか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 数学 参考書・因数分解の回答で 共通因数を括る時 「括弧の前」に括る場合と 「括弧の後」に括る場合と別れま 1 2023/01/31 13:52
- Excel(エクセル) エクセルの数式で添付写真のものを入力していてわからないのですが、こちらの通り[]括弧も入れて入力しま 4 2023/02/05 18:33
- 数学 数学(因数分解) なぜ①と②は括った共通因数を 括弧の後ろに置かないんでしょうか? ⑤は後ろに置いて 3 2023/01/28 12:01
- CPU・メモリ・マザーボード 511 CPUファン非検出 2 2023/08/05 08:53
- 数学 因数分解 (6x+y)(4a−3b) 6x+y(4a−3b) (6x+y)4a−3b と左右どちらか 3 2023/01/31 13:55
- Windows Me・NT・2000 widows xpのエラーで利用ができなくなりました 3 2022/12/21 13:43
- Word(ワード) Word文書で1,2,3...になっている脚注を、一括で(1),(2),...といった括弧つきに変更 2 2023/03/03 21:27
- その他(OS) Windows以外のOSでhttps://login.live.com/にアクセス出来無い 3 2022/04/06 12:57
- Excel(エクセル) フォルダ内の全ブックのシート名を変更したい 7 2022/09/22 21:34
- Windows 10 IT初心者です! powershellで以下のようなエラーが出ました オブジェクト参照がオブジェクト 1 2023/05/17 11:30
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
c言語
-
C言語での引数の省略方法
-
「指定されたキャストは有効で...
-
C言語 エラーの原因がわからな...
-
【C++】関数ポインタの使い方
-
#define _CRT_SECURE_NO_WARNIN...
-
複数桁10進数の*桁目だけを抽出...
-
if と配列の組み合わせ
-
素数 再帰関数
-
数字列を3桁ごとにカンマで区切...
-
read関数をノンブロッキングで...
-
ラップ関数とはどんなものですか?
-
(int *)の意味
-
C言語で分からないところがあり...
-
実数の整数部,小数部の取得
-
int型とfloat型の演算結果
-
単方向リストに適当な値を入れ...
-
16進数の計算の仕方を教えて下さい
-
「{ } で囲むだけ」は正しい?
-
エラー 添字が付けられた値が、...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「指定されたキャストは有効で...
-
C言語での引数の省略方法
-
#define _CRT_SECURE_NO_WARNIN...
-
複数桁10進数の*桁目だけを抽出...
-
【C++】関数ポインタの使い方
-
C言語 エラーの原因がわからな...
-
c++でテンプレートのコードでわ...
-
(int *)の意味
-
ラップ関数とはどんなものですか?
-
数字列を3桁ごとにカンマで区切...
-
c言語のリダイレクトによる円...
-
比較回数と交換回数表示について
-
実数の整数部,小数部の取得
-
if と配列の組み合わせ
-
構造体の勉強中です 合計点の高...
-
PowerShellがうまくいかない
-
c言語の配列を使ってサイコロを...
-
課題でつまってます・・・
-
C言語のサイコロシミュレート
-
エラー 添字が付けられた値が、...
おすすめ情報