Picproje Elektronik Sitesi

PROGRAMLAMA DİLLERİ => C/C++ => Konuyu başlatan: power20 - 05 Şubat 2020, 09:33:43

Başlık: Class tanımlarken hata
Gönderen: power20 - 05 Şubat 2020, 09:33:43
vc++ acemisiyim.  Sorunsuz çalışan fonksiyonun kopyasını  class içine almaya çalışıyorum.
hata çıkıyor. Class buraya eklenemez mi?  nasıl bir formalite gerekiyor?

#include "stdafx.h"
 
#include <stdio.h>
#include <string.h>
#include <stdlib.h>

using namespace std;


 
 
int addNumbers(int value1, int value2);
 
 


class test{
public:
int a,b;

public:
int addNumbers(int value1, int value2)
{
return value1 + value2 ;
}
}

int addNumbers(int value1, int value2)
{
   return value1 + value2 ;
}


 





(https://i.ibb.co/YfyFdsZ/hatalar.png) (https://ibb.co/YfyFdsZ)
Başlık: Ynt: Class tanımlarken hata
Gönderen: MC_Skywalker - 05 Şubat 2020, 10:01:39
bir kere main fonksiyonun yok onu tanımlamalısın. onu tanımlamazsan


int main()
{
   addNumbers(502,2020)  //pusedo code
   
   return 0;
}

LINK : fatal error LNK1561: Giriş noktası tanımlanmalıdır

gibi bir hata alırsın. bir iki yerde ";" eksiğin var.
Başlık: Ynt: Class tanımlarken hata
Gönderen: power20 - 05 Şubat 2020, 10:12:04
main fonksiyonu ekledim class tanımını kabul etmiyor.
main içinde class kullanmak istiyorum.

#include "stdafx.h"


 class test{
public:
   int value1, value2; 
public:
  int addNumbers(){
  return value1 + value2 ;
   };
};



 

int main(void) {

  return 0;
}
En azından derlerken hata çıkmasa, yola devam edebileceğim.
Hocam şu kodu çalıştırıversen çok makbule geçicek. Class kullanmak içim MFC mi gerekir? 
Başlık: Ynt: Class tanımlarken hata
Gönderen: MC_Skywalker - 05 Şubat 2020, 11:18:53
http://www.cplusplus.com/doc/tutorial/classes/

şuraya bir göz gezdir. Classlar ile ilgi örnek ve açıklama var. 
Başlık: Ynt: Class tanımlarken hata
Gönderen: AST - 05 Şubat 2020, 12:30:02
Şu şekilde çalıştırılabilir,
class test{
   
public:
    int a,b;
 int addNumbers(int value1, int value2)
 {
 return value1 + value2 ;
 }
};


int main()
{
    test _test;
   
    std::cout << _test.addNumbers(10,20);


    return 0;
}
Başlık: Ynt: Class tanımlarken hata
Gönderen: power20 - 05 Şubat 2020, 14:10:43
Benim solution/ proje ayarlarında sorun olduğu anlaşılıyor
(Compile as :   C Code (/TC)   veya Default seçilmesi  )

Sıfır proje olarak şöyle çalıştı.

#include <iostream>
 
using namespace std;



class test{
   
public:
    int a,b;
 int addNumbers()
 {
 return a + b ;
 }
};

int main () {

test _test;
_test.a=2;
_test.b=3;

    // std::cout << _test.addNumbers();
 
  return  _test.addNumbers() ;
}