الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

هل يمكن وضع main داخل class كما في جافا ؟

مغلقمُجاب
بدأه jaman في 28 مارس 2014 · 4 رد · 803 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم
فى الجافا كنا نعمل كلاس Main ونضع بداخلة دالة التنفيذ ونستدعى بداخل دالة ال main ما نريده
وكان هناك اكثر من كلاس بداخلة اكثر من داله كل كلاس يقوم بوظيفه محدده
حاولت فعل ذلك بالسى بلس بلس ولم اتوفق ولا حظت ان هناك اختلافات اتمنى من الخبراء توضيحها
حيث اريد عمل التالى بالسى بلس بلس
ولقد كتبته بالجافا لتوضيح الفكرة

// Main.class
package users;
public class Main 
{
	public static void main(String[] args) 
	{
		First first = new First();
	}
}
// First.class
package users;
public class First 
{
	public First()
	{
		System.out.println("Hi Java");	
	}
}
#2 أفضل إجابة

لايمكنك عمل هذا في c++، فـmain يجب أن تكون دالة وليست فئة من class أو أي شيء آخر، في الحقيقة لو كتبت:

 

#include <cstdio>

class First
{
public:
  First()
  {
    puts("Hi Java");    
  }
};

class Main
{
public:
  static void main()
  {
    First first;
  }
};

 

فالمصرف سيبني ملف object فارغ، أي كأنك بنيت ملف cpp فارغ.

 

أقرب شيء لبرنامجك:

 

#include <cstdio>

class First
{
public:
  First()
  {
    puts("Hi Java");    
  }
};

int
main()
{
  First f;
}

تم تعديل هذه المشاركة بواسطة Mr.B في 28 مارس 2014 في 23:27

3
#3

اشكرك اخى Mr.B على سرعة ردك لقد جربت الكود ونفذ على ملف main.cpp (اى على ملف واحد) ولقد جربت عمله على ملفين وللاسف لم ينجح

انا استخدم النت بينز وقلت اضافة c++ كلاس First واعطى رسالة خطأ (اضاف ملف  ايضا First.h)

first is not declared in this scope

#4

ضع الفئة في ملف header وأدرج هذا الملف في برنامجك الرئيسي:

 

// header.h
#ifndef __HEADER_H__
#define __HEADER_H__

#include <cstdio>

class First
{
public:
  First()
  {
    puts("Hi Java");    
  }
};

#endif

 

// main.cpp#include "header.h"intmain(){  First f;}
2
#5

بارك الله فيك

هذا الموضوع مغلق.

مواضيع مشابهة