Hi, just joined the forums! Seems pretty neat. Reading up on the OS and Ethical hacking section as soon as I'm done posting this
This is actually a very simple program; it's a circular Queue. The problem is that I'm used to C++ and I am aware that I've done a TON of things wrong in my sloppy method of conversion to C#. I was wondering if somebody could give me a few general pointers about some of the mistakes I made. Of course the already-converted code would be great, but I don't expect anybody to take the time to do that hehe. I was just hoping for a few rules of thumb to help me convert it myself.
Also, do I use the "System.Console.Writeline()" function just like "cout" in C++? I mean, if I want to write something involving a variable, would I do it like...
Code:
System.Console.Writeline("The day today is " << x << " and the year is " << y << ".");
Code:
#include <iostream>
#include <string>
class qObject
{
public:
double time;
string place;
};
class Queue
{
private:
int front;
int rear;
qObject [] Q = new qObject[11];
public:
Queue();
void Enqueue(qObject);
void Dequeue();
void Makeempty();
bool IsEmpty();
bool IsFull();
int QueueCount();
void ShowQueue();
};
Queue::Queue()
{
front = 0;
rear = 0;
}
void Queue::Enqueue(qObject x)
{
if(IsFull()) {System.Console.WriteLine("FULL" << endl); return;}
Q[rear].time = x.time;
Q[rear].place = x.place;
rear++;
if(rear == 11) rear = 0;
}
void Queue::Dequeue()
{
if(IsEmpty()) {System.Console.WriteLine("EMPTY" << endl); return;}
front++;
if(front == 11) front = 0;
}
void Queue::Makeempty()
{
front = 0;
rear = 0;
}
bool Queue::IsEmpty()
{
if(front == rear) return true;
else return false;
}
bool Queue::IsFull()
{
if(front > rear && (front - rear) == 1) return true;
else if(front < rear && (rear - front) == 10) return true;
else return false;
}
int Queue::QueueCount()
{
if(rear > front) return (rear - front);
else if(rear < front)
{
return (11 - front + rear);
}
else return 0;
}
void Queue::ShowQueue()
{
if(IsEmpty()) {System.Console.WriteLine("EMPTY" << endl); return;}
/*
* Insert code to write all elements in the Queue to the screen here.
* Left blank since I'm not sure if I'm doing it write or not with the 'System.Console.WriteLine' command
*/
}
public class Program1Queue
{
public static void Main()
{
}
}
Thanks,
Mike