コード
前提・実現したいこと
メインのゲームループでsetしたクラスを別のクラスで使う方法。
このプログラムの場合 enemy.cppのattack関数を使えるようにしたい
発生している問題・エラーメッセージ
変更後
targetsetの部分が上手くいっていないのでどうやって解決していけばいいか悩んでいる。
エラーメッセージ targetsetの行にて
一致するトークンが見つかりませんでした。
該当のソースコード
C++
player.h
class player
{
public:
void setplayer(float x, float y);
float player_x; float player_y;
};
player.cpp
include "player.h"
void player::setplayer(float x, float y) {
player_x = x; player_y = y;
}
enemy.h
include "enemy.h"
include "player.h"
class enemy
{
public:
void setenemy(float x, float y);
void targetset(player p); void attack();
private:
float enemy_x; float enemy_y; player eplayer;
enemy.cpp
include "enemy.h"
include <iostream>
using namespace std;
void enemy::setenemy(float x, float y){
enemy_x = x;
enemy_y = y;
}
void enemy::attack() {
if (eplayer.player_x < enemy_x) { cout << "左に向かって攻撃"; } if (eplayer.player_x > enemy_x) { cout << "右に向かって攻撃"; }
}
void enemy::targetset(player p) {
{
eplayer = p;
}
source.cpp
include <iostream>
include "player.h"
include "enemy.h"
int main() {
player p; enemy e; p.setplayer(100.0f,100.0f); e.setenemy(200.0f, 200.0f); e.targetset(p); return 0;
}
試したこと
補足情報(FW/ツールのバージョンなど)
visual studio 2019
回答1件
あなたの回答
tips
プレビュー