こんにちは私はC++でCLRアプリケーションを開発しています。数時間の作業の後、私は、異なるファイルにクラスを移動することは、すべてを同じファイルに入れるよりも良いアイデアだと決めました。私は新しいヘッダーファイルと新しいcppファイルを作成しましたが、私はちょっと初心者なので間違ったことがありました。クラス別ファイルC++
これは私のヘッダファイル
#pragma once
class Show {
public:
void Show::show_all(int num, int id_master, int id_slave, int periferia, int data);
};
私のcppファイル(単純な印刷機能)
#include "Show.h"
#include <stdio.h>
class Show{
private:
void show_all(int num, int id_master, int id_slave, int periferia, int data) {
printf("%d\n", num);
printf("id of mastra is: %d\n", id_master);
printf("id of slave is: %d\n", id_slave);
printf("id of device is: %d\n", periferia);
printf("in data part %d\n", data);
};
};
メインに、私はこの
Show sh;
ような何かをやっていると、それで、このような私の機能を呼び出すときに
宣言されていない識別子(私はそれを言及常にとき)sh.vypis_vsetko(num, id_master, id_slave, periferia, data);
は、しかし、私は(メイン関数内のすべてを)理解しない多くのエラー
- 「SP」を取得します
- '.show_all'の左にはクラス/構造体/共用体が必要です
- 構文エラー: ';'が見つかりません識別子 'sh'の前に
私はこれを解決しようとして多くの時間を費やしましたが、結論はありませんでした。 私はどんなアドバイスにも大変感謝しています。クラスなく行われる.cpp
ファイルのクラスメソッドを定義する、最後
class Show {
public:
void show_all(int num, int id_master, int id_slave, int periferia, int data);
};
:
ここには本当に基本的なエラーがたくさんあります。ヘッダーと実装ファイルの分離についてのチュートリアルをご覧ください。 – AndyG
私は興味がありますが、コードはまったく正しいとは言えません。アクセス修飾子を 'public'から' private'に変更したいのはなぜですか? – George