Here are the errors:
no matches converting function `concat' to type `class Dlist (*)(class List<int>, class List<int>)'
error candidates are: template<class T> Dlist concat(Dlist, Dlist)
no matching function for call to `concat(Dlist&, Dlist&)'
I can't understand what the compiler is trying to tell me.
I'm trying to create a function that allows insertion anywhere in a linked list...here is what I have so far but am a bit confused on where to go from here
I'm writing a linked list program for class that has a simple text based menu and I believe I am nearly done, it just wont recognize my "count" function as a function and I don't know why. The error comes up at line 70.
I have a linkedList search function given and I am having a little trouble getting it to work. I've made a few attempts with no success. Given normal search code:
template <class Type> bool orderedLinkedList<Type>::search(const Type& searchItem) const { bool found = false; nodeType<Type> *current; //pointer to traverse the list
current = first; //start the search at the first node
[Code] .....
My attempt to make it a recursive search:
template <class Type> bool orderedLinkedList<Type>::search(const Type& searchItem) const { //bool found = false; nodeType<Type> *current; //pointer to traverse the list current = first; //start the search at the first node
It is suppose to insert items in Linked List in sorted ascending order and no duplicates are allowed.The code complies but it creates duplicates out of order.
I'm have troubles with this program that requires me to make a search through a Linked List and find a specified value. It also needs to be a template function. I've completed the rest of the program fine and everything runs ok except for the search function. Code below:
The program I have below. If you copy and paste it it should work. However, When I uncomment my search function I get lots of errors and I think it has to do with incorrect syntax of it being a template. Need to do this search function:
Linked.h header file
Code: #ifndef LINKED_H #define LINKED_H #include<iostream> template <class T> class Linked { private: // Declare a structure for the list
It fills the singly-linked list with 0 through 9 and calls a function to prompt the user to search for a number. I don't see any glaring errors, I was just wondering what could be done to simplify it or if there's anything I missed.
I am trying to write a function to return the first element of a link list queue. I am not real sure how to implement this. I have include a copy of the struct for my Node & queue.
I'm trying to write a function called 'set' that sets the value of the i'th cell to val on my linkedList, and then returns the previous contents. I am stuck on it due to compiling errors:
template <typename T> T set(Node<T> *head, int i, const T &val) { for(int n = 0; n < i; n++) if(head == val) { val = i; } return val; } #endif
When I try to call it in the main() I get these errors:
node_utils.h: In function ‘T set(Node<T>*, int, const T&) [with T = int]’: node_demo.cpp:26:38: instantiated from here node_utils.h:161:2: error: ISO C++ forbids comparison between pointer and integer [-fpermissive] node_utils.h:162:3: error: assignment of read-only reference ‘val’
So, I understand that I can't compare head & val on my if-statement -- But what do I do?
How do I Write a function that takes two linked list as input arguments these linked list contain numbers like this:
num1->3->5->2->NULL (assuming that number 1 is 352) num2->4->3->9->1->NULL (assuming that number 2 is 4391)
The function should return 1 if num1 points to a linked list which represents a smaller number than the number pointed to by num2 linked list. Otherwise, it returns -1. If both linked list point to exactly the same number, returns a 0.
My program seems to be working fine, except for when I call on my delete function. I don't receive any errors, but when I call the delete function my program outputs nothing and freezes. As in, my print function (which is called before the delete function) doesn't even work. I've tried removing bits of the function to see if I could pinpoint where exactly the issue is, but I've had no luck.
#include <iostream> #include <string> using namespace std; class List{ private: struct node{ string _data;
[Code] ....
And the function that is causing me trouble:
void deleteNode(string data){ node* del = NULL; t = h; n = h; while(n != NULL && n->_data != data){
Implement a recursive function named void printBack(DoublyLinkedNode<T>* node) for the class DoublyLinkedCircularList which will print out the elements in the list from back to front. The function is initially called with the first node in the list. You may not make use of the previous(prev) links
This is my solution where I got 2 out of a possible 3 marks:
template<class T> void DoublyLinkedCircularList<T> :: printBack(DoublyLinkedNode<T>* node) { if(node->next == NULL) //Correct- 1 mark return 0; else printBack(node->next); //Correct - 1 mark cout << current-> element << " "; }
I'm trying to write a function that takes two linked lists and creates a third one with only the common elements.
It assumes the first list (the caller) has no dups, but it doesn't seem to be working. The program doesn't crash, it just hangs when it is supposed to display L3 (the third list)..everything else runs and is displayed fine.
I need to call one function on my C++ program. I made one root calculator for functions, but, this doesn't work.
// FUNCION QUE CALCULA LA DIFERENCIA ENTRE 2 VECTORES real mn_error_vectores(Array1D< real > &u, Array1D< real > &v) { int i; if(u.dim()!=v.dim()){ printf("mn_error_vectores() : arrays of different dimensions
I'm having this pain in the ass error (No matching function for call to Data::Data() ) on this block of code:
Etapa::Etapa(string nm, float dist, string loc, Data dt) { nome = nm; distancia = dist; local = loc; data = dt; }
[Code].....
I guess this is happening because I'm trying to give Etapa an argument of Data type and I can't do it or put it in a variable since it has 3 parameteres (mes, dia, ano).
This code from [URL] as it is gives compile error I can't understand.
#include <iostream> using namespace std; class Rectangle { int width, height;
[Code] ....
Gives error
(g++ first.cpp) first.cpp: In function ‘int main()’: first.cpp:14:38: error: no matching function for call to ‘Rectangle::Rectangle(<brace-enclosed initialiser list>)’
In the above program, I define an operator<< function in global namespace which has exactly the same signature as the one define in <string> header : [URL] . In the main function, I call operator<< on cout and a string, after which I guess it would cause ambiguity. The result is out of my anticipation, it compiles and prints [hi]. So I guess my function is a better match because it does not require argument-dependent lookup (ADL). Moreover, even if I add using namespace std; at the beginning of the main function, the program still compiles and prints [hi].
In short, I have two question:
#1 : Why is my function a better match (therefore no ambiguity) in the two cases respectively (with and without using namespace std;)?
#2 : Does using namespace affect ADL? Is ADL still performed after applying using namespace, or is it not performed because the function is thrown into global namespace?