I'm having an issue during the linking stage of the .exe during compile time, and it's because of a call to a function with a polymorphic parameter.
//here's how the classes are setup
class grandpa {};
class mom public grandpa{};
class dad public grandpa {};
[Code]....
dad has sons in the vector and mom has daughter in the vector. What I want to do is have a function that can accept either of these vectors as one parameter like so: void func(const grandpa* aObject);
Finally, I have an error when I pass an object to the function like so: func( d[0] );
I'm learning C# and having fun and I've been practicing by working on this little data entry console application. Basically the user inputs first name, last name, age, gender, employee id, then I ask the user if he/she wants to add another entry, if yes then loops back at the top, and if no, it prints out the amount of entries added. The issue I'm having is that the entry list is never kept or stored when adding another entry, it replaces what was entered before which is not what I'm looking for. I don't know how to stuff one entry list information seperately in an array so that I can print out which ever entry the user decides to choose once he/she is done adding entries. Is there a way to make this work?
Here is my program code:
using System; namespace Ch02_Exercises_12 { class Program { static void Main() { string firstName; string lastName; string input; sbyte age; char gender;
I did know that the size of a class is increased by 4 bytes (32bit compiler) if the class has a virtual function. I wrote one program and it is giving strange output. I am using linux g++ compiler.
The program and output is as below
Code: #include<iostream> using namespace std; class Base { public: void fun() {
[Code] ....
output=4
Code: #include<iostream> using namespace std; class Base { public: virtual void fun() {
What is the best / most efficient way to load polymorphic data from a file? I thought you could have an enumeration and for each item to load from a file you could have an integer at the start specifying the type of data, but I think there must be a better way I'm just not sure what.
Example of what I mean:
//The syntax isn't really that important for explanation class base; class a: base, b: base; enum polymorphicType { A, B };
and in the loading code you would have (this is the bit I think could be improved):
polymorphicType t; File >> t; if(t == A) { newObject = new A; } else if(t == B) { newObject = new B; }
I think there is probably a more efficient/better way of doing this I am just unaware of it.
Imagine if there is an abstract class with a method (say output or print) which would be inherited by a few other classes. Later objects are created using the inherited classes, and the user wishes to call the above method twice, for eg (i) output/print to screen and (ii) output/print to a file. What is the best way to achieve that.
Linked lists seem to be the most erroneous and most frequent thing I use and post about nowadays. I've been wanting to handle data structures in my own library of functions, but I'm not sure how to imitate polymorphism without too many ambiguities. I could just pass some character or string value to represent a type, but I wanted to see if there was actually something more elegant I could use before I dive in.
I'm building a simple system management console application. I've abstracted the console "Menu" and derived from it a "WelcomeMenu" class with public inheritance.
The problem is that when instantiating a Menu* object and assigning it a new WelcomeMenu...I'm still not able to use WelcomeMenu's "ShowWelcomeMessage() with the Menu* object. Instead, I get "error: Class 'Menu' has no member function call 'ShowWelcomeMessage().' Which is true, but I thought a pointer-to-Menu object should be able to use the public methods of derived classes without casting in this case. Code follows.
// Menu and WelcomeMenu Classes #ifndef MENU_H #define MENU_H
This works if the function pointer being passed to the event manager is not a member function.
I have two other classes Scene and Object that could potentially use this EventManager to create callback events. Scene and Object are both pure virtual objects. How can I pass a pointer to a member function of the child classes of both Scene and Object? I am fine with just having two separate watchEvent functions for Scene and Object but how do I pass the type of the Object or the type of the Scene? The child classes are unknown as they are being created by someone using this game engine.
For example, if I want to make a player object it would be something like
class PlayerObject : public Object{...};
Now that PlayerObject type has to find its way to PlayerObject::functionToCall(). I think I need templates to do this but, since I never used them before
This is how I intend to use this
class OtherScene : public Scene{ void p_pressed(void){ //pause }
I wanted to print the values of a array from a function by passing the array as well as the number of elements to be read. For a single dimensional array, this is how i have written it. It's pretty straight forward. I want to read 5 elements from the 5th element in the array.
Code: #include<stdio.h> void display(int array[],int size) { int i;
[Code]....
With this code I want to print the five elements from the element present in [0][4].
But shows an error that
Code: D:BennetCodeblocks CLearning CSingleDimentionalArray.c||In function 'main':| D:BennetCodeblocks CLearning CSingleDimentionalArray.c|18|warning: passing argument 1 of 'display' from incompatible pointer type [enabled by default]| D:BennetCodeblocks CLearning CSingleDimentionalArray.c|2|note: expected 'int (*)[10]' but argument is of type 'int *'| ||=== Build finished: 0 error(s), 1 warning(s) (0 minute(s), 0 second(s)) ===|
I know when you pass a array as an argument it gets decomposed into a pointer, but with a multi-dimensional array this is not the case. how this works for mult- dimensional array's?
I am writing a program for a poker game.. I created a class to get cards and create deck.. the problem I am having now is how to deal 5 cards to an array to be evaluated later. I want to call the array player1[5]. So I tried to create a pointer called GetCard, and was hoping to then pass the value into the player1[] array. I tried to use pointer but I get the following error
4931[Error] void value not ignored as it ought to be
I have the following code in sourceFile.cpp. functionA() is first called and inserted entires for key1, key2 and key3. Then functionB() gets called to use the vectors for the 3 keys. I want to free all memory after exiting functionC(). Among the three ways to put an entry into the map for the 3 keys, which is correct / better?
Class ClassA { ... } ClassA *key1 = new ClassA(); ClassA *key2 = new ClassA(); ClassA *key3 = new ClassA();
I want to pass array to function, to fill array with new values and then to print the array in the main. But I have problem because it prints me just array of zeros. Maybe the concept is wrong, I'm new with passing arrays to function.
function:
Code: void printSum(int *return_array) { int return_array[3]; int i; for(i = 0; i < 3 ; i++){ return_array[i] = 5;
Code:
void printSum(int *return_array); int main { int m_return_array[3]; int i,j; for(i= 0 ; i < 3 ; i++){ m_return_array[i] = 0; } printfSum(start,m_return_array);
I need to pass a 2D array to a function. I want to know, where I may have made a mistake. This is the piece of code that I found on the web, and I am using it to allocate my 2D array.
Code: signed char allocate2D( int** arr2D, int rows, int cols ) { int i; arr2D = malloc( rows*sizeof( int* ) ); if( !arr2D ) return -1;
[Code]....
My main function passes the 2D array to the function
Code: signed char read_root_message_file( int **Root_Messages, int *num ) This is how I pass the array in the main function to the above function:
Code: int main( int argc, char *argv[] ) { int **Root_Messages; ... ... Root_Messages = NULL; read_root_message_file( Root_Messages, &num_root_msg );
I have been asked to write a lottery program in c using 5 separate functions 1 to take 6 numbers from user 2 to display the numbers 3 to sort the numbers 4 compare the chosen numbers to the winning numbers and 5 to list the frequency the user pick a number depending on how many times they play the game the problem im having is with the first 2 functions i can take the input and pass it to a display function but cannot get it to display the numbers here is what i have. The output from this is at the bottom .....
I am following a tutorial and the topic was passing array to function so i tried to do a BMI calculator by myself. I am using code blocks to compile the codes, it is actually working while using compiler's run button. But when I open the exe file, its closing the window after entering the persons' weights and heights. Here is the code
Code:
// Passing array to function example BMI calculator of n person #include<stdio.h> #include<math.h> void assess(float bmi[],int a); int main(void){ int n,i,j; }
I am trying to pass a struct through an array to another array from one microprocessor to another microprocessor and then dereference that array to update the same exact struct on the other microprocessor.My goal is to always have values inside of both structs while sending any updates to the struct on the other microprocessor in the mean time but I seem to be looping through the data and the members of the struct seem to be cleared out after every clock cycle. I can verify this by the flashing of my leds which the struct controls.
I'm trying to pass a two-dimensional array to a function. The function is defined as: long foobar(char foo[][CONST]); I have to create that array dynamically. Currently I do that this way: char* bar = new char[count * CONST];
But when I'm trying to pass the array I get a type conversion error. I tried a lot of different ways to pass the pointer and/or to allocate the memory, but apparently I didn't find the right way or combination of definition, allocation, casting and calling.I cannot change the definition of the function, which (IMHO) is pretty stupid. :(
I am writing a program for a poker game.. I created a class to get cards and create deck.. the problem I am having now is how to deal 5 cards to an array to ve evaluated later. I want to call the array player1[5]. I tried to use pointer but I get the following error
i have defined an object which is an array of my class called Player now i want to pass this whole array as a parameter in a function, i think it will be done by using pointers but i am not able to figure out how it is done?
Player player[4]; void showscoreboard(" ", int cround){} " " represents the blank where the array should b passed.
I have to create a program that accepts 10 numbers from user, and then I display a list of the numbers, the smallest one and the higher number. I have problems with displaying the smallest and higher number, I tried to Array.Sort and Array.Reverse, but I don't know what I'm doing wrong, this is my code:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace SmallAndLargeGUI
[Code] ...
Also I tried to set
if (x == 10) numberTextBox.Enabled = false;
to block the textbox when the user has entered 10 numbers, but didn't work either...