Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Home » Tip Bank » C++
Language: C++
Expertise: Beginner
May 6, 1997

'Structs and classes

Question:
Please examine my code and tell me what I am doing wrong!

This is the first part of my program:

#include 
#include 


class LinkedLst
{
	public:

		LinkedLst();					//Constructor
		void AddToFront(int Value);		//Add Value to the front of the list
		void Print();					//Print the list elements
		void Average();					//Calculate and print the average of the list elements
		void Search(int X);				//Search the list for X, output its position or the message"Not Found!"

	private:

		struct Node
		{
			int Data;
			Node *Link;
		};
		
		Node *FirstNode;

};

LinkedLst::LinkedLst()
{
	FirstNode = 'Null';
}
This is the error I am getting:
C:\c++\proj7.cpp(33) : error C2446: '=' : no conversion from 'const int' to 'struct LinkedLst::Node *' (new behavior; please see help)

Answer:
The line

FirstNode = 'Null';
is syntatically wrong.

When you write anything inside single quotes, that type is treated as a char constant. The correct predefined const for assigning to pointers is NULL. Also, the language defines 0 as being a pointer value different from any other. So I prefer to just assign 0 to my pointers.

So you'll want to write that statement as:

FirstNode = NULL;
or
FirstNode = 0;
DevX Pro
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date