GIDForums  

Go Back   GIDForums > Computer Programming Forums > C++ Forum
User Name
Password
Register FAQ Members List Calendar Search Today's Posts Mark Forums Read

 
 
Thread Tools Search this Thread Rate Thread
  #1  
Old 16-May-2006, 13:29
iceman2006 iceman2006 is offline
New Member
 
Join Date: Apr 2006
Location: Hawaii
Posts: 21
iceman2006 is on a distinguished road

issues compiling .h and .cpp files with Dev C++


I'm having a problem compiling a .h and .cpp file in Dev C++. I'm sure it is something simple I am overlooking, but for the life of me I can't figure it out. I am creating a new project and inserting two .h and one .cpp files into the project. When I compile, I get multiple errors. Normally I just consolidate the .h into the .cpp file, but when I do that with these files I get errors as well.

The I'm fairly certain the files are valid as they are examples out of the text book. The code is extremely long so I've attached are the files I'm working with. I changed the extension to .txt to upload the files. The correct extensions are linkedList.h orderedLinkedList.h and testProgLinkedList.cpp Thanks in advance.
Attached Files
File Type: txt linkedList.txt (11.3 KB, 141 views)
File Type: txt orderedLinkedList.txt (3.9 KB, 87 views)
File Type: txt testProgLinkedList.txt (1.1 KB, 74 views)
  #2  
Old 16-May-2006, 15:36
TurboPT's Avatar
TurboPT TurboPT is offline
Senior Member
 
Join Date: Feb 2006
Location: Atlanta, GA
Posts: 1,230
TurboPT is a jewel in the roughTurboPT is a jewel in the roughTurboPT is a jewel in the rough

Re: issues compiling .h and .cpp files with Dev C++


I do not have Dev C++, but those files compiled without error with MS Visual C++ 6.0.

Can you possibly post the first several errors (if not a few more)? Most users here probably won't bother with those files (as mentioned in the guidelines), but will know what the error message(s) might indicate.
__________________
Use the force...read the source!!
WYCIWYG -- what you code is what you get!
  #3  
Old 16-May-2006, 17:31
iceman2006 iceman2006 is offline
New Member
 
Join Date: Apr 2006
Location: Hawaii
Posts: 21
iceman2006 is on a distinguished road

Re: issues compiling .h and .cpp files with Dev C++


Code:
Compiler: Default compiler Building Makefile: "C:\LINK\orderedLinkedListType\Makefile.win" Executing make... make.exe -f "C:\LINK\orderedLinkedListType\Makefile.win" all g++.exe -c testProgLinkedList.cpp -o testProgLinkedList.o -I"C:/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"C:/Dev-Cpp/include/c++/3.4.2/backward" -I"C:/Dev-Cpp/include/c++/3.4.2/mingw32" -I"C:/Dev-Cpp/include/c++/3.4.2" -I"C:/Dev-Cpp/include" In file included from orderedLinkedList.h:7, from testProgLinkedList.cpp:4: linkedList.h:18: warning: friend declaration `std::ostream& operator<<(std::ostream&, const linkedListType<Type>&)' declares a non-template function linkedList.h:18: warning: (if this is not what you intended, make sure the function template has already been declared and add <> after the function name here) -Wno-non-template-friend disables this warning In file included from testProgLinkedList.cpp:4: orderedLinkedList.h: In member function `bool orderedLinkedListType<Type>::search(const Type&)': orderedLinkedList.h:43: error: `first' undeclared (first use this function) orderedLinkedList.h:43: error: (Each undeclared identifier is reported only once for each function it appears in.) orderedLinkedList.h: In member function `void orderedLinkedListType<Type>::insertNode(const Type&)': orderedLinkedList.h:74: error: `first' undeclared (first use this function) orderedLinkedList.h:77: error: no post-increment operator for type orderedLinkedList.h:97: error: no post-increment operator for type orderedLinkedList.h:103: error: no post-increment operator for type orderedLinkedList.h: In member function `void orderedLinkedListType<Type>::deleteNode(const Type&)': orderedLinkedList.h:116: error: `first' undeclared (first use this function) orderedLinkedList.h:150: error: no post-decrement operator for type In file included from testProgLinkedList.cpp:4: orderedLinkedList.h:158:7: warning: no newline at end of file make.exe: *** [testProgLinkedList.o] Error 1 Execution terminated

Someone on another forum told me to use "this->first" and not to use "using namespace" clause in header files. Instead, prepend all of those names with "std::".

I will try those suggestions and see what happens.

I tried to compile using MS Visual C++ and got different errors. I'm not at my home computer right now so I can't tell you the exact error. I will post it later.
Last edited by cable_guy_67 : 16-May-2006 at 21:21. Reason: added [code] ... [/code] tags to stop smilies
  #4  
Old 17-May-2006, 00:01
iceman2006 iceman2006 is offline
New Member
 
Join Date: Apr 2006
Location: Hawaii
Posts: 21
iceman2006 is on a distinguished road

Re: issues compiling .h and .cpp files with Dev C++


Below are the errors I get with MS Visual C++ 6.0. Is there another post that goes step by step creating a project with existing header and c++ files? Maybe I'm doing something wrong there.


--------------------Configuration: LINK - Win32 Debug--------------------
Compiling...
testProgLinkedList.cpp
c:\link\linkedlist.h(30 : error C2248: 'first' : cannot access protected member declared in class 'linkedListType<int>'
c:\link\linkedlist.h(105) : see declaration of 'first'
C:\LINK\testProgLinkedList.cpp(25) : see reference to function template instantiation 'class std::basic_ostream<char,struct std::char_traits<char> > &__cdecl operator <<(class std::basic_ostream<char,struct std::char_traits<char> > &,const c
lass linkedListType<int> &)' being compiled
Error executing cl.exe.

testProgLinkedList.obj - 1 error(s), 0 warning(s)
  #5  
Old 17-May-2006, 02:17
LuciWiz's Avatar
LuciWiz LuciWiz is offline
Moderator
 
Join Date: Jul 2004
Location: Cluj-Napoca (Romania)
Posts: 1,031
LuciWiz is a jewel in the roughLuciWiz is a jewel in the roughLuciWiz is a jewel in the roughLuciWiz is a jewel in the rough

Re: issues compiling .h and .cpp files with Dev C++


I have formatted the content of the files in this post; I advise you not to post code in attached files, because very few people will read it, and thus you will get less help.

linkedList.h
CPP / C++ / C Code:
#ifndef H_LinkedListType
#define H_LinkedListType

#include <iostream>
#include <cassert>
using namespace std;

template <class Type>
struct nodeType
{
	Type info;
	nodeType<Type> *link;
};

template<class Type>
class linkedListType
{
	friend ostream& operator<<(ostream&, const linkedListType<Type>&);

public:
    const linkedListType<Type>& operator=
          			      (const linkedListType<Type>&); 
		//Overload the assignment operator.
    void initializeList(); 
 		//Initializes the list to an empty state.
	    //Postcondition: first = NULL, last = NULL,
		//                count = 0
    bool isEmptyList();
 		//Function to determine whether the list is empty. 
		//Postcondition: Returns true if the list is empty;
		//               otherwise, returns false.

	int length();
		//Function to return the number of nodes in the 
		//list.
		//Postcondition: The value of count is returned.
    void destroyList();
 		//Function to delete all the nodes from the list.
  		//Postcondition: first = NULL, last = NULL, 
		//               count = 0
    Type front(); 
 		//Function to return the first element of the list.
 		//Precondition: The list must exist and must not be
		//empty.
  		//Postcondition: If the list is empty, then the 
 		//               program terminates; otherwise, 
	    //               the first element of the list is 
		//               returned.
    Type back(); 
       //Function to return the last element of the
       //list.
		//Precondition: The list must exist and must not
		//be empty.
		//Postcondition: If the list is empty, then the 
		//               program terminates; otherwise,
		//               the last element of the list is 
		//               returned.

   bool search(const Type& searchItem);
		//Function to determine whether searchItem is in 
		//the list.
		//Postcondition: Returns true if searchItem is found
		//               in the list; otherwise, it returns
		//               false.

    void insertFirst(const Type& newItem);
		//Function to insert newItem in the list.
		//Postcondition: first points to the new list 
		//                and newItem is inserted at the
		//                beginning of the list.

    void insertLast(const Type& newItem);
		//Function to return newItem at the end of the
		//list.
	    //Postcondition: first points to the new list, 
		//                newItem is inserted at the end
		//                of the list, and last points to
		//                the last node in the list.

    void deleteNode(const Type& deleteItem);
  		//Function to delete deleteItem from the list.
 		//Postcondition: If found, the node containing 
   		//               deleteItem is deleted from the 
		//                list, first points to the first
		//                node, and last points to the last 
		//                node of the updated list. 

    linkedListType(); 
   		//default constructor
 		//Initializes the list to an empty state.
 		//Postcondition: first = NULL, last = NULL, 
		//               count = 0 

    linkedListType(const linkedListType<Type>& otherList); 
         //copy constructor

    ~linkedListType();   
    	//destructor
   		//Deletes all the nodes from the list.
    	//Postcondition: The list object is destroyed. 

protected:
    int count;		//variable to store the number of 
 					//elements in the list
    nodeType<Type> *first; //pointer to the first node of 
                           //the list
    nodeType<Type> *last;  //pointer to the last node of 
                           //the list 
private:
    void copyList(const linkedListType<Type>& otherList); 
		//Function to make a copy of otherList.
		//Postcondition: A copy of otherList is created 
		//               and assigned to this list.
};

template<class Type>
bool linkedListType<Type>::isEmptyList()
{
	return(first == NULL);
}

template<class Type>
linkedListType<Type>::linkedListType() // default constructor
{
	first = NULL;
	last = NULL;
	count = 0;
}

template<class Type>
void linkedListType<Type>::destroyList()
{
	nodeType<Type> *temp;   //pointer to deallocate the memory 
							//occupied by the node
	while(first != NULL)    //while there are nodes in the list
	{
	   temp = first;        //set temp to the current node
	   first = first->link; //advance first to the next node
	   delete temp;         //deallocate memory occupied by temp
	}

	last = NULL;	//initialize last to NULL; first has already
                   //been set to NULL by the while loop
 	count = 0;
}

	
template<class Type>
void linkedListType<Type>::initializeList()
{
	destroyList(); //if the list has any nodes, delete them
}

template<class Type>
int linkedListType<Type>::length()
{
 	return count;
}  // end length

template<class Type>
Type linkedListType<Type>::front()
{   
    assert(first != NULL);
   	return first->info; //return the info of the first node	
}//end front


template<class Type>
Type linkedListType<Type>::back()
{   
	 assert(last != NULL);
   	 return last->info; //return the info of the first node	
}//end back

template<class Type>
bool linkedListType<Type>::search(const Type& searchItem)
{
    nodeType<Type> *current; //pointer to traverse the list
    bool found;

    current = first; //set current to point to the 
                     //first node in the list
    found = false;   //set found to false

    while(current != NULL && !found)		//search the list
        if(current->info == searchItem)     //the item is found
           found = true;
        else
           current = current->link; //make current point 
                                    //to the next node
     
     return found;
}//end search

template<class Type>
void linkedListType<Type>::insertFirst(const Type& newItem)
{
	nodeType<Type> *newNode; //pointer to create the new node

	newNode = new nodeType<Type>; //create the new node

	assert(newNode != NULL);	//If unable to allocate memory, 
 								//terminate the program

	newNode->info = newItem; 	   //store the new item in the node
	newNode->link = first;        //insert newNode before first
	first = newNode;              //make first point to the 
                                 //actual first node
	count++; 			   //increment count

	if(last == NULL)   //if the list was empty, newNode is also 
                      //the last node in the list
		last = newNode;
}

template<class Type>
void linkedListType<Type>::insertLast(const Type& newItem)
{
	nodeType<Type> *newNode; //pointer to create the new node

	newNode = new nodeType<Type>; //create the new node

	assert(newNode != NULL);	//If unable to allocate memory, 
 							    //terminate the program

	newNode->info = newItem;      //store the new item in the node
	newNode->link = NULL;         //set the link field of newNode
         						//to NULL

	if(first == NULL)	//if the list is empty, newNode is 
     					//both the first and last node
	{
		first = newNode;
		last = newNode;
		count++;		//increment count
	}
	else			//the list is not empty, insert newNode after last
	{
		last->link = newNode; //insert newNode after last
		last = newNode;   //make last point to the actual last node
		count++;		//increment count
	}
}//end insertLast

template<class Type>
void linkedListType<Type>::deleteNode(const Type& deleteItem)
{
	nodeType<Type> *current; //pointer to traverse the list
	nodeType<Type> *trailCurrent; //pointer just before current
	bool found;

	if(first == NULL)    //Case 1; list is empty. 
		cerr<<"Can not delete from an empty list.\n";
	else
	{
		if(first->info == deleteItem) //Case 2 
		{
			current = first;
			first = first->link;
			count--;
			if(first == NULL)    //list has only one node
				last = NULL;
			delete current;
		}
		else  //search the list for the node with the given info
		{
			found = false;
			trailCurrent = first;   //set trailCurrent to point to
                                 //the first node
			current = first->link;  //set current to point to the 
    			   //second node
	
			while(current != NULL && !found)
			{
  				if(current->info != deleteItem) 
				{
					trailCurrent = current;
					current = current->link;
				}
				else
					found = true;
			} // end while

			if(found) //Case 3; if found, delete the node
			{
				trailCurrent->link = current->link;
				count--;

				if(last == current)      //node to be deleted was 
                                     //the last node
					last = trailCurrent;  //update the value of last

				delete current;  //delete the node from the list
			}
			else
				cout<<"Item to be deleted is not in the list."<<endl;
		} //end else
	} //end else
} //end deleteNode


	//Overloading the stream insertion operator
template<class Type>
ostream& operator<<(ostream& osObject, const linkedListType<Type>& list)
{
	nodeType<Type> *current; //pointer to traverse the list

	current = list.first;   //set current so that it points to 
					   //the first node
	while(current != NULL) //while more data to print
	{
	   osObject<<current->info<<" ";
	   current = current->link;
	}

	return osObject;
}

template<class Type>
linkedListType<Type>::~linkedListType() // destructor
{
	destroyList(); 
}//end destructor


template<class Type>
void linkedListType<Type>::copyList
            	      (const linkedListType<Type>& otherList) 
{
   nodeType<Type> *newNode; //pointer to create a node
   nodeType<Type> *current; //pointer to traverse the list

   if(first != NULL)	//if the list is nonempty, make it empty
	  destroyList();

   if(otherList.first == NULL) //otherList is empty
   {
		first = NULL;
		last = NULL;
 		count = 0;
   }
   else
   {
		current = otherList.first;  //current points to the 
									//list to be copied
		count = otherList.count;

			//copy the first node
		first = new nodeType<Type>;  //create the node

 		assert(first != NULL);

		first->info = current->info; //copy the info
		first->link = NULL;  	     //set the link field of 
									 //the node to NULL
		last = first;    		     //make last point to the 
            						 //first node
		current = current->link;     //make current point to  
           							 //the next node

			//copy the remaining list
		while(current != NULL)
		{
			newNode = new nodeType<Type>;  //create a node

			assert(newNode!= NULL);

			newNode->info = current->info;	//copy the info
			newNode->link = NULL;   	    //set the link of 
                                        //newNode to NULL
			last->link = newNode; 		//attach newNode after last
			last = newNode;   			//make last point to
										//the actual last node
			current = current->link;	//make current point to
       									//the next node
		}//end while
	}//end else
}//end copyList


	//copy constructor
template<class Type>
linkedListType<Type>::linkedListType
            	      (const linkedListType<Type>& otherList) 
{
	first = NULL;

	copyList(otherList);
	
}//end copy constructor

	//overload the assignment operator
template<class Type>
const linkedListType<Type>& linkedListType<Type>::operator=
   	 	 		(const linkedListType<Type>& otherList)
{ 
	if(this != &otherList) //avoid self-copy
		copyList(otherList);

	return *this; 
}

#endif

orderedLinkedList
CPP / C++ / C Code:
#ifndef H_orderedLinkedListType
#define H_orderedLinkedListType

#include <iostream>
#include <cassert>

#include "linkedList.h"

using namespace std;

template<class Type>
class orderedLinkedListType: public linkedListType<Type>
{
public:
   bool search(const Type& searchItem);
     //Function to determine whether searchItem is in the list.
     //Postcondition: Returns true if searchItem is found in
     //               the list; otherwise, it returns false

   void insertNode(const Type& newItem);
     //Function to insert newItem in the list.
     //Postcondition: first points to the new list and newItem is 
     //               inserted at the proper place in the list.

   void deleteNode(const Type& deleteItem);
     //Function to delete deleteItem from the list.
     //Postcondition: If found, the node containing deleteItem
     //               is deleted from the list; first points 
     //               to the first node of the new list.
     //               If deleteItem is not in the list, an 
     //               appropriate message is printed.
};



template<class Type>
bool orderedLinkedListType<Type>::search(const Type& searchItem)
{
    bool found;
    nodeType<Type> *current; //pointer to traverse the list
	
    found = false;    //initialize found to false
    current = first;  //start the search at the first node

    while(current != NULL && !found)
       if(current->info >= searchItem)
          found = true;
       else
          current = current->link;

      if(found)       
         found = (current->info == searchItem); //test for equality

    return found;
}//end search


template<class Type>
void orderedLinkedListType<Type>::insertNode(const Type& newItem)
{
	nodeType<Type> *current; //pointer to traverse the list
	nodeType<Type> *trailCurrent; //pointer just before current
	nodeType<Type> *newNode;  //pointer to create a node

	bool  found;

	newNode = new nodeType<Type>; //create the node
 	assert(newNode != NULL);

	newNode->info = newItem;   //store newitem in the node
	newNode->link = NULL;      //set the link field of the node 
	                           //to NULL

	if(first == NULL)  //Case 1	
	{	
	   first = newNode;
	   count++;
 	}
	else
	{
	   current = first;
	   found = false;

	   while(current != NULL && !found) //search the list
			if(current->info >= newItem)
				found = true;
     		else
			{
				trailCurrent = current;
				current = current->link;
			}
		  
	   if(current == first)  	//Case 2
	   {
			newNode->link = first;
			first = newNode;
 			count++;
	   }
	   else				//Case 3
	   {
			trailCurrent->link = newNode;
			newNode->link = current;
 			count++;
	   }
	}//end else
}//end insertNode

template<class Type>
void orderedLinkedListType<Type>::deleteNode
                                    (const Type& deleteItem)
{
	nodeType<Type> *current; //pointer to traverse the list
	nodeType<Type> *trailCurrent; //pointer just before current
	bool found;

	if(first == NULL) //Case 1
		cerr<<"Cannot delete from an empty list."<<endl;
	else
	{
		current = first;
		found = false;

		while(current != NULL && !found)  //search the list
			if(current->info >= deleteItem)
				found = true;
			else
			{
				trailCurrent = current;
				current = current->link;
			}
		
		if(current == NULL)   //Case 4
			cout<<"The item to be deleted is not in the list."
			    <<endl;
		else
 			if(current->info == deleteItem) //item to be deleted  
											//is in the list
			{
  				if(first == current) 		//Case 2
				{
					first = first->link;

					delete current;
				}
				else     				//Case 3
				{
					trailCurrent->link = current->link;
					delete current;
				}
 				count--;
			}
			else  					//Case 4
				cout<<"The item to be deleted is not in the list."
				    <<endl;
	}
} //end deleteNode

#endif

testProgLinkedList.cpp
CPP / C++ / C Code:
//Program to test various operations on an ordered linked list

#include <iostream> 
#include "orderedLinkedList.h"

using namespace std;

int main()
{
     orderedLinkedListType<int> list1, list2;	//Line 1
     int num;									//Line 2

     cout<<"Line 3: Enter integers ending with -999"
         <<endl;								//Line 3
     cin>>num;									//Line 4

     while(num != -999)							//Line 5
     {
		list1.insertNode(num);					//Line 6
		cin>>num;								//Line 7
     }

     cout<<endl;								//Line 8

     cout<<"Line 9: List 1: "<<list1<<endl;		//Line 9

     list2 = list1; //test the assignment operator; Line 10

     cout<<"Line 11: List 2: "<<list2<<endl;	//Line 11

     cout<<"Line 12: Enter the number to be "
         <<"deleted: ";							//Line 12
     cin>>num;									//Line 13
     cout<<endl;	                            //Line 14

     list2.deleteNode(num);						//Line 15

     cout<<"Line 16: After deleting the node, "
         <<"List 2: "<<endl<<list2
         <<endl;								//Line 16

     return 0;					
}

Best regards,
Lucian
__________________
Please read these Guidelines before posting on the forum

"A person who never made a mistake never tried anything new."
Einstein
  #6  
Old 17-May-2006, 07:05
TurboPT's Avatar
TurboPT TurboPT is offline
Senior Member
 
Join Date: Feb 2006
Location: Atlanta, GA
Posts: 1,230
TurboPT is a jewel in the roughTurboPT is a jewel in the roughTurboPT is a jewel in the rough

Re: issues compiling .h and .cpp files with Dev C++


With my MS VC++, I created an empty 'Win32 Console Application', added your files to the source and header folders. After build, there were no errors.

After a quick test run, I saw the 'Line 3:...' message, but that's as far as I went.

Try that and let us know how it goes. If I get a chance later today, I'll try building your files with g++.
__________________
Use the force...read the source!!
WYCIWYG -- what you code is what you get!
  #7  
Old 17-May-2006, 10:45
iceman2006 iceman2006 is offline
New Member
 
Join Date: Apr 2006
Location: Hawaii
Posts: 21
iceman2006 is on a distinguished road

Re: issues compiling .h and .cpp files with Dev C++


I didn't want to post the whole code before because I thought it was too long. Hopefully in the future I will only need help with portions of my code, not the whole thing.

OK, I tried this again and I'm still getting the same errors. Here's what I'm doing. Once I create an empty 'Win32 Console Application' project I click Project, Add to project, Files. I have placed the .h and .cpp files in the same folder as the project. I select the .h and .cpp files and click OK. The files show up under the project. Next I click on Globals and double click main(). I then select Build, Compile testProgLinkedList.cpp, after the code compiles, I get the errors.
  #8  
Old 17-May-2006, 19:16
iceman2006 iceman2006 is offline
New Member
 
Join Date: Apr 2006
Location: Hawaii
Posts: 21
iceman2006 is on a distinguished road

Re: issues compiling .h and .cpp files with Dev C++


I installed Visual Studio 2005 and tried compiling and still got errors. So I did some more research and found the following reference.

http://www.parashift.com/c++-faq-lit...html#faq-35.16

So I changed the following section of my code:

CPP / C++ / C Code:
template<class Type> class linkedListType;  //added this
template<class Type> ostream& operator<<(ostream&, const linkedListType<Type>&);  //added this
template<class Type>
class linkedListType
{
	friend ostream& operator<< <> (ostream&, const linkedListType<Type>&);  //added the <>

It works!

By the way I just received my free copy of Visual Studio 2005 a couple of days ago by going to this web site http://www.learn2asp.net/Campaign.aspx. You just need to take a couple of tutorials and you will get the software in about a month.
  #9  
Old 17-May-2006, 20:14
TurboPT's Avatar
TurboPT TurboPT is offline
Senior Member
 
Join Date: Feb 2006
Location: Atlanta, GA
Posts: 1,230
TurboPT is a jewel in the roughTurboPT is a jewel in the roughTurboPT is a jewel in the rough

Re: issues compiling .h and .cpp files with Dev C++


Good, glad to see you got it going.
VC++ 6 still does not give me errors, but when I compiled with g++, it gave the same errors that you got.

Is that Visual Studio 2005, the express version? If so, there's no need to take any tutorials, Micro$oft is offering the express version free here:
http://msdn.microsoft.com/vstudio/express/visualc/
__________________
Use the force...read the source!!
WYCIWYG -- what you code is what you get!
  #10  
Old 17-May-2006, 20:32
iceman2006 iceman2006 is offline
New Member
 
Join Date: Apr 2006
Location: Hawaii
Posts: 21
iceman2006 is on a distinguished road

Re: issues compiling .h and .cpp files with Dev C++


It's not express. It's standard edition with 2 CDs. It comes with lots of other things too. If you go to the link they tell you what you get. If you download the tutorials, it counts as taking them, so just download 3 tutorials and the software will be in the mail.
 
 

Recent GIDBlogProblems with the Navy (Enlisted) by crystalattice

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Doxygen comments in .h or .cpp? seabreeze C++ Forum 0 02-Apr-2006 03:47
User defined headers davis Miscellaneous Programming Forum 6 16-Feb-2006 19:40
Bloodshed Dev C++ Project Options JdS C++ Forum 6 11-Nov-2005 18:23

Network Sites: GIDNetwork · GIDWebHosts · GIDSearch · Learning Journal by J de Silva, The

All times are GMT -6. The time now is 08:02.


vBulletin, Copyright © 2000 - 2010, Jelsoft Enterprises Ltd.