• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

[c++] deklaracja struktury w pliku .h

VPS Starter Arubacloud
0 głosów
718 wizyt
pytanie zadane 25 listopada 2017 w C i C++ przez gujanczyk Obywatel (1,680 p.)

Siema,

Mam problemy z umieszczeniem struktury w pliku .h i .cpp

1) Gdy mam tak kod napisany to wszystko działa:

w pliku FractalGenerator.h: (w .cpp tylko jakieś tam tworzenie obiektów)

#pragma once
#include <iostream>
#include "stdafx.h"

struct Vertix
{
	int vertix_X;
	int vertix_Y;

	Vertix(int x, int y)
	{
		vertix_X = x;
		vertix_Y = y;
	}

	int getMiddleSection(int a, char b)
	{
		if (b == 'x')
			return (vertix_X + a) / 2;
		return (vertix_Y + a) / 2;
	}
};

2) a gdy tak chce to zaimplementować to mi wyskakuje błąd vertix: struct type redefinition

FractalGenerator.h:

#pragma once
#include "stdafx.h"

struct Vertix
{
	Vertix(int x, int y);
	int getMiddleSection(int a, char b);
};

FractalGenerator.cpp.

#include "stdafx.h"
#include <iostream>
#include "FractalGenerator.h"
#include "FractalWriter.h"

struct Vertix
{
	int vertix_X;
	int vertix_Y;

	Vertix(int x, int y)
	{
		vertix_X = x;
		vertix_Y = y;
	}

	int getMiddleSection(int a, char b)
	{
		if (b == 'x')
			return (vertix_X + a) / 2;
		return (vertix_Y + a) / 2;
	}
};

 

komentarz 25 listopada 2017 przez DragonCoder Nałogowiec (36,500 p.)
#ifndef

#define

Sprawdz te 2 rzeczy

1 odpowiedź

+1 głos
odpowiedź 25 listopada 2017 przez draghan VIP (106,230 p.)
wybrane 25 listopada 2017 przez gujanczyk
 
Najlepsza

Komunikat błędu mówi Ci, co robisz nie tak. Ponownie zdefiniowałeś w pliku cpp strukturę. Jeśli chcesz rozdzielić strukturę na deklarację i definicje metod, musisz użyć innej notacji:

#include "stdafx.h"
#include <iostream>
#include "FractalGenerator.h"
#include "FractalWriter.h"
 
Vertix::Vertix(int x, int y)
{
    vertix_X = x;
    vertix_Y = y;
}
 
int Vertix::getMiddleSection(int a, char b)
{
    if (b == 'x')
        return (vertix_X + a) / 2;
    return (vertix_Y + a) / 2;
}

 

komentarz 25 listopada 2017 przez gujanczyk Obywatel (1,680 p.)
dzięki. Rozwiązanie okazało się proste, nie wiem jakim cudem nie umiałem tego zrobić podczas googlowania.
komentarz 25 listopada 2017 przez draghan VIP (106,230 p.)
Na zdrowie. Jak skończysz, pochwal się projektem. :)
komentarz 25 listopada 2017 przez gujanczyk Obywatel (1,680 p.)
Już mam skonczony tylko refaktoryzowałem kod. Program jest na projekt na 1 semestrze na informatyce. Generuje on fraktale za pomocą algorytmu "gra w chaos" do pliku .pgm Jak chcesz to moge Ci wysłac program :D

Podobne pytania

0 głosów
0 odpowiedzi 867 wizyt
0 głosów
1 odpowiedź 186 wizyt
pytanie zadane 6 listopada 2022 w C i C++ przez Krzysztofs1234 Użytkownik (890 p.)
0 głosów
3 odpowiedzi 1,112 wizyt
pytanie zadane 20 kwietnia 2018 w C i C++ przez Treck7 Nowicjusz (120 p.)

92,451 zapytań

141,261 odpowiedzi

319,073 komentarzy

61,853 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...