• ベストアンサー

C++のクラスについて

C++のクラスのメンバ関数のint getの使い方がよくわかりません。 解説のわかりやすいサイトがありましたら教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

その他の回答 (2)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.3

「C++ のクラスのメンバ関数の int get の使い方」を分かりやすく解説しているサイトがこの世の中に存在するとは到底思えないなぁ. 最低限, どんなクラスでどんな定義をしているのかくらいは書けないものだろうか. それとも, 親切な超能力者 (しかも C++ を知っている) がこの質問を目にとめてくれるのを待つ気なんだろうか?

  • kt1965
  • ベストアンサー率34% (116/339)
回答No.1

教科書くらい買って読んだり、検索しましょう。

関連するQ&A

  • C#クラスについて教えてください

    下記通りクラスを作成した場合、プロパティaを配列にできますか? class Class1 { public string a { set; get; } public int b { set; get; } public int c { set; get; } } イメージとしては下記通りにしたいのですが、なかなかうまく行きません。 class Class1 { public Class1(int x) { } public string a[x] { set; get; } public int b { set; get; } public int c { set; get; } } private void Form1_Load(object sender, EventArgs e) { Class1 f = new Class1(2); f.a[0] = "asdf"; f.a[1] = "asdfa"; f.a[2] = "asdfasd"; f.b = 1; f.c = 2; } 初心者なんで、やさしく教えてください。お願いします。

  • C++ クラスをメンバにもつクラスについて

    お世話になります。C++初心者でうまくコードが書けません(><) クラス1と2があり、クラス1のメンバにはクラス2があります。 メインでクラス1をインスタンス化してクラス2のfunc2を呼び出します。 func2ではクラス1のインスタンスから呼び出された場合にクラス1の m_int1を取得します。 Class Class1{ public:  int m_int1;  Class2 m_Class2; }; Class Class2{ public: void func2(); }; void Class2::func2(){  /*ここの記述方法が分かりません*/  /*C1から呼び出されたらC1のm_int1に100を入れる*/  /*以下間違え*/  class1 C2_1;/*別のclass1のオブジェクトなのでこれに入れてもダメっぽい*/  C2_1.m_int1 = 100; } void main(){  class1 C1;  C1.m_int1 = 10;  C1.m_class2.func(); } C1.m_class2.func()の中から呼び出したC1にアクセスする方法が 分かりません(TT)。実体がまだあるのだからアクセスする方法は あると思うのですが・・・ どなたかよろしくお願いします。

  • C++ クラス概念

    以下の違いがよく理解できていません。 どなたかご教授お願い致します。 (1)クラスのメンバー変数に static を付けた場合と、 メンバーではない変数に static を付けた場合の違い (2)クラスのメンバー関数に static を付けた場合と、 メンバーではない関数に static を付けた場合の違い [プログラム例] class MyClass { public: static int internalCount; static void func(MyClass& a) {/* ... */} }; static int i; static void f(MyClass& a) { /* ... */ }

  • perlはc++のようなクラスや構造体は作れない?

    c++で class hoge{ hoge(); int menber; }; というようなクラス定義と hoge x; というようなクラス変数定義のようなのは、Perlではできないのでしょうか。 メンバ関数はべつにいいのですが、その構造を配列にして管理したいのです。 たとえば、個人情報のような。 Perlではスタティックなメンバしか持てないと聞いたのですが、本当ですか?

    • ベストアンサー
    • Perl
  • C++でクラスの自己診断を効率良く行うには?

    JavaやPythonで用いる事が可能なクラスの自己診断をC++で効率良く書くにはどうすればよいか、教えて頂けますか。 例えばカウンターを表すクラスCounterをJavaで書くと、 public class Counter { // ここにメンバー変数やメンバー関数の定義を置く public static void main(String args[]){ # 自己診断コード Counter ct = new Counter(); ct.count_up(); System.out.println(ct.get_count()); } } となると思います。このモジュールをそのまま実行すれば、自己診断コードが実行されますし、外部からこのモジュールを呼び出す場合は自己診断コードが呼び出されないようになるので、大変便利です。 Pythonの場合は、if __name__ == "__main__":の下に自己診断コードを置くと言うことがよく行われます。 このような自己診断をC++で効率良く実現するにはどうすればいいのでしょうか。 今考えている方法は、 // Counter.h class Counter { private: int counter; public: Counter(); void count_up(); int get_count(); }; // Counter.C #undef MAIN #include "Counter.h" using namespace std; // メンバー関数の定義をここに置く #ifdef MAIN int main(){ Counter ct; ct.count_up(); cout << ct.get_count() << endl; return 0; } #endif のように書く事ですが、自己診断・外部からの使用を切り替えるたびに#define MAIN <-> #undef MAINの書き換えを行わなければならず、少々不便です。 よろしくお願いします。

  • クラスのスコープ範囲

    再度お世話になります。 C++のクラスについての質問ですが、 別ファイル(別のDLL)に定義されているメンバ関数を利用したいのですが、 どのように外部宣言すればよろしいのでしょうか。 どうぞ宜しくお願いします。 例) A.dll あるクラス内に格納されている値を取得する為に、 Get_XXXというメンバ関数が定義されている。 B.dll こちらからその値をそのメンバ関数を利用して取得する。

  • C++でこんなクラスを作りたい。

    以下のようなことをしたいと思っています。C++初学者です。 長いかもしれませんがずっと悩んでいます。 いま  w(x) = ap(x) + bq(x) + cr(x) + ..... のような式を計算機実験でメインに扱おうと思っています。 項の数は時によりけりです。 (a,b,cは係数、p,q,rは関数です) それぞれのp,q,rは同じ構造をした式であり、また係数a,b,cを p,q,rの付属物だと考えてcomponentというクラスのインスタンスにしました。 class component{ //メンバ変数 double a //係数 mathvec mu //平均値,mathvecは自作の加減法などができるベクトルのクラス double sigma //分散 //メンバ関数は割愛 } な感じです。 さて、それで上であげたw(x)のような関数が何種類か登場するので 同じ式に属するcomponentのインスタンスをグループ化するようなクラスをつくりたいのです。 w = ap + bq + cr z = ku + mv + ng を扱うのならばとりあえずp,q,r,u,v,gを宣言した跡に mixture mix1(p,q,r); mixture mix2(u,v,g); のようにできるmixtureというクラスを作りたいのです。 それで mix2.at(0)->method(); (u.method()と同じ感じ) みたいな操作ができるとうれしいです。 自分で少し考えたのはmixtureがcomponent*を格納する STLのvectorをもつようにすればいいかなと思いましたが どうもコンパイルエラーがぜんぜん取れず困っております。 class mixture{ private: vector<component *> vec; public: mixture(int num, ...);  //numはp,q,rなどの個数 component *at(int num); //numは何番目の要素を返すか }; mixture::mixture(int num, ...){ va_list ap; va_start(ap,num); for(int i=0;i<num;i++){ vec.push_back(va_arg(ap,component&); } } component* mixture::at(int num){ return vec.at(num); } お願いします! 特にISO C++ forbids declaration of vector with no type みたいなエラーがまず出ます。コンパイラはg++です。

  • c++,ある関数のクラスから別のクラスの関数を呼ぶ

    c++で、あるクラスのメンバ関数から、別のクラスのメンバ関すを呼びたいのですが、どのようにしたらできますか? 例えば、以下のような単純なコードを考えています。やりたいことは、Aのメンバ関数であるaaa()からBのクラスであるbbb()を呼びたいと思っています。その理由を少し説明します。ここでは、Aというクラスとmain関数はオープンソースコードを例えています。できるだけ、元のオープンソースコードを書き換えずに新たな機能を拡張したいと思っています。そこで、Bというクラスを使って、元のオープンソースコードに機能を拡張しようとしています。このような理由なので、bbb()という関数はaaa()という関数から呼びたいです。メイン関数には何も書き加えないのがベストです。 現状では、実行すると「this is aaa」という出力しか出ません。ここに「this is bbb」の出力を加えたいです。クラスAとBにある程度コマンドを追加して、解決できないでしょうか。 #include <iostream> using namespace std; //------------------------------------------------------ class A{ public: void aaa(); virtual void bbb(){} }; //------------------------------------------------------ //------------------------------------------------------ class B : public A{ public: void bbb(); }; //------------------------------------------------------ //------------------------------------------------------ void A::aaa() { cout << "this is aaa \n"; bbb(); } //------------------------------------------------------ //------------------------------------------------------ void B::bbb() { cout << "this is bbb \n"; } //------------------------------------------------------ //------------------------------------------------------ int main() { A a; a.aaa(); return 0; } //------------------------------------------------------

  • C++ クラスについて

    クラスについて今勉強しています。 そこで質問なんですが クラスの中にクラスというのは実現可能なのでしょうか? クラスAの中にクラスBとクラスCが入っている状態で、 クラスAの中にある関数XでクラスBやCの関数を呼ぶような処理を目指しています。 またクラスAに宣言されている変数をクラスB,Cの中で変更したりできないでしょうか?

  • クラスのメンバへのアクセス方法(C#)

    クラスのメンバへのアクセス方法(C#) テキストファイルから複数の情報を取得し、クラスの各メンバに格納しようとしています。 その際クラスのメンバ名をいちいち指定して情報を格納しているのですが美しくありません。 クラスのメンバはインデックスなどで指定することは出来ないのでしょうか? 例. for (int i = 0; i < 3; i++) { str[i] = reader1.ReadLine(); } data.name = str[0]; data.kind = str[1]; data.val = str[2]; これをこんな感じにしたい↓↓↓ for (int i = 0; i < 3; i++) { data.メンバ(i) = reader1.ReadLine(); } C#初心者なのでトンチンカンな質問であってもご容赦ください。よろしくお願いします。

専門家に質問してみよう