C++ :: Initialize String Data Members As Nullptr Or As Zero-size Array?

Nov 4, 2014

Is it generally better to initialize string data members as nullptr or as a zero-size array?

I can understand the former is superior from a memory-use perspective and also not requiring the extra allocation step. However, many string management functions will throw an exception - wcslen for instance - if you pass them a null pointer. Therefore I am finding any performance gained is somewhat wiped out by the extra if(pstString==nullptr) guards I have to use where it is possible a wchar_* may still be at null when the function is called.

View 4 Replies


ADVERTISEMENT

C/C++ :: Constructor To Initialize Each Members Of Array?

May 3, 2014

Need a C++ constructor to initialize each members of an array. how to give value for for each elements of an array declared as a class object according to the users input.

View 1 Replies View Related

C++ :: How To Take Size Of Array And Initialize It On Heap

Feb 6, 2014

I am creating a class that has a private array on the heap with a constructor that takes the size of the array and initializes it on the heap. Later I have to make a deconstructor delete the space and print out free after.In my code, I was able to heap a private array and make a deconstructor, but I don't know how to take the size of the array and initialize it on the heap. My guess is this:

int* size = new int();

Also when you initialize size on the heap, don't you also have to delete it too? If so, where, in the code, do you do that? Here is my code so far.

Class Student {
private:
int size;
int* array = new int[size];
public:
Student(); // Constructor
~Student(); // Deconstructor

[code]....

How do you make a constructor that takes the size of the array and initializes it on the heap

Student::~Student()
{
delete[] array;
cout << "Free!" << endl;
}

View 1 Replies View Related

C++ :: Initialize Size Of Vector Array Position And Color?

Feb 3, 2015

Getting back into programming after a few years off and a bit rusty.

My question is: Is this going to initialize the size of the vector array's position and color properly?

#include <GLFW/glfw3.h>
#include <vector>
class TerrainClass {
private:
struct VertexType {
std::vector<float> position[3];

[Code]...

View 6 Replies View Related

C :: Why Size Of Struct Is Larger Than Sum Of All Size Of Its Members

Jul 11, 2013

I was wondering why, in C, the sizeof of a struct is larger than the the sum of all the sizeofs of it's members. It only seems to be by a few bytes, but as a bit of a perfectionist I fine this a bit annoying.

View 1 Replies View Related

C++ :: How To Put File Data Into Members Of A Class - Array Transferring

Mar 10, 2013

I'm trying to put file data into members of a class. Remember to type in the file name you want to open. Cool feature right? I just had Dbase.txt so I chose that.

Fixed stuff in the .txt. Now I need to figure out why it only does 1 set and then ends.

#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <fstream>
using namespace std;
class INFO {

[Code] .....

Dbase.txt:
Bob
Guy
Programmer
M
9999.99
40
------------------
Little
Guy
Little Brother
M
0.0
3
------------------

View 14 Replies View Related

C++ :: Function To Initialize Double Data Array Element To 0.0

Apr 25, 2013

ok here is the question: Write a function that will initialize a double data array element to 0.0 ?

View 4 Replies View Related

C++ :: Can't Initialize String Array In Constructor

Jul 22, 2013

I am currently practicing designing classes. In one exercise, I am trying to store 15 words in an array, and randomly print one (using the rand() functions and seeding it with crime. I have a header file, a respective .cpp file, and a main .cpp file. When I try to compile the code using g++ GuessWord.cpp UseGuessWord.cpp -o UseGuessWord, I get the following error in my constructor: expected primary-expression before ‘{’ token

Here is my code:

header file (GuessWord.h):
#ifndef GUESSWORD
#define GUESSWORD
#include <string>
using namespace std;

[code].....

View 2 Replies View Related

C/C++ :: String Out Of Bound - How To Initialize Array

Mar 7, 2014

I'm a newbie to C++ and I am writing a code that searches strings and checks their value. I'm mostly working with if statements.

My code tends crash on Dev C++, even when I haven't recently saved any changes or compiled it, citing "memory access errors".

I recompiled in visual studio, and visual studio told me I have string out of bound errors.

My code is very long... but most of it is copy and pasted with slightly different conditions.

I believe the problem lies in how I initialize arr[4] ??

#include <cstdlib>
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main() {
cout << "Hall symbol -- generator matrix program" << endl;
// Setting up a data structure bc a normal array cannot handle the data for the spacegroups

[Code] ....

View 9 Replies View Related

C/C++ :: String Getting Printed Even After Size Of Array Is Exceeded?

Mar 4, 2015

#include<iostream.h>
#include<conio.h>
void main() {
clrscr();
char name[5];
cout<<"Enter your name";
cin>>name;
cout<<"Your name is"<<name;
getch();
}

In the above program the size of the array of the variable name is 5. which means the variable cant store more than 5 characters.

which also means

If I give the string "LINISH"
It should only print LINIS

But while the program is running, Even if I type a 10 characters string, It is getting printed Completely..why?

#include<iostream.h>
#include<conio.h>
void main(){
clrscr();
char name[5];

[Code] .....

In this program when I input a string for the variable name,It is getting printed completely, irrespective how many characters are there in the string.But If the string (which is input to the second variable that is game )holds more than 5 characters. the input of the first variable(name) is getting disturbed..why?

look at the below cited output to be more clear about my doubts.

OUTPUT NO:1

Enter your name:LINISHFRANCIS (Note that the input holds more than five chars)
Enter your game:GOLF(input is less than five chars)

LINISHFRANCIS loves GOLF(Two inputs are getting printed comopletely)

OUTPUT NO:

Enter your name:LINISHFRANCIS (Note that the input holds more than five chars)
Enter your game:FOOTBALL(input is more than five chars)

ALL loves FOOTBALL [Note that "ALL" is the last three letters of FOOTBALL

I am using TurboC++ for windows 7

View 5 Replies View Related

C++ :: How Could Object Access Its Private Data Members From Outside

Nov 12, 2013

How does an object access its private data members in copy constructor.

The relevant part of the code: Code: C::C(const C &obj)
{
x = obj.x;
y = obj.y;
}

Normally the object1 called "obj" cannot access its private data members outside. But in this situation it can access. How can it be explained?

Here are the complete code:

Code:
#include <iostream>
using namespace std;
class C{
public:
C(int,int);
C(const C &);

[Code] .....

View 7 Replies View Related

C :: Initialize Data Member In Struct

Mar 28, 2013

I was looking at some linked list material and was wondering something. Can you initialize a data member inside a struct like in C++? i.e.

Code:
typedef struct node
{
int data;
struct node * next = NULL; // this is the line in question
} LLnode;

View 3 Replies View Related

C++ :: Compare Data Members Of Objects Store In Vector

Mar 6, 2014

Overview of problem : I am using std::vector to hold objects of Subject. Now this vector contains lots of objects( with lots I mean 10-20 objects at max) . These objects have string member values like category and sub_category. Both category and sub_category can have string which can be same of other objects's sub_category & category.

Issue: Now I want my std::vector to have only those objects whose's sub_category are unique. If category is not unique that's not a problem .

Secondly if we found 2 objects having same sub_category then we have to delete one of them from the vector. we will delete it based on some rules example

Rules for deleting are if

i) instance of Subject ->category = " Land " OR if category = "Jungle" then delete other duplicate object ,
ii) if above condition doesn't match then delete either of them.

I am wondering , how would I compare the sub-items from the vector . For example. I have class say Subject

class Subject {
public :
// some constructors,
// functions to get ., set category and sub category
std::String get_sub_category()
std::string get_category();
private:
std::string category;
std::string sub_category;
}

I have vector which stores object of Subjects. Example : vector<Subject> copy_vector;

Now what I want is to delete the object from vector that has same sub_category I am not looking for source code buT i need a starting point,? Example:

copy_vector[0] = Animal object that has sub_category Tiger
copy_vector [1] = Animal object with Lion as sub category
copy_vector[2] = Forest object with sub_category Tiger

What I want is to based on some conditions(which I can do ) remove either Forest or Animal object containing Tiger. But for that how would I do comparison? I have written the function and have checked it.

std::vector< Subject >copy_vector;
// copy_vector contains all the objects of Subject with redundant sub_category
for( std::vector< Subject >::iterator ii = copy_vector.begin() ; ii != copy_vector.end() ; ++ii ) {
sub_category = ii->get_sub_category();

[code] ....

View 1 Replies View Related

C++ :: Formatted TXT File And Store Data Into Their Respective Members

Apr 16, 2014

The program is supposed to read a formatted .txt file and store the data into their respective [Class] Members. It will then output the data collected onto screen.I overloaded ifstream and istream. When I call for file>>ptr[i] to read the data, something goes wrong. It prompts me to input data (which is in istream overload).The Data in .txt file is as follows;

#ifndef STUDENTTESTSCORES_H
#define STUDENTTESTSCORES_H
#include <string>
#include <iostream>
#include <fstream>
using namespace std;

[code]....

View 6 Replies View Related

C++ :: Memento Pattern Failing Because Of Pointer Data Members

May 24, 2014

All the undos and redos were working fine until the pointer data members came into the picture. The problem is that the values pointed to changed, but the pointers themselves did not. So restoring gives the same pointers but they still point to the new values. I think the solution is that the classes that are the pointer data members themselves need their own Mementos (which would be a lot of work because there are many data member pointers in my program). Is that the only approach?

Here is a sample code to show what I'm talking about. You can compile and run the program to see the problem it has restoring values of pointer data members:

#include <iostream>
#include <string>
#include <memory>
#include <vector>
#include <list>
#include <cstdlib>
#include <ctime>
class FoodHistory {

[Code] ....

View 2 Replies View Related

C/C++ :: How To Increment Data Members Of Dynamically Created Object

Jun 26, 2012

I am to first increment data members of object that has not created dynamically (i have done with this part),now i have created object dynamically and how to increment its data which i have passed as argument as:

obj3 = new manage(35 , 36)

View 4 Replies View Related

C++ :: Can't Initialize Static Data Member In The Class Definition

Apr 17, 2013

"You cannot initialize the static data member in the class definition — that’s simply a blueprint for an object and initializing values for members are not allowed. You don’t want to initialize it in a constructor, because you want to increment it every time the constructor is called so the count of the number of objects created is accumulated."

Why don't you want to initialize it in a constructor?

Edit: Because every time it is called it will set it back to 0 or whatever the initializing value.

View 2 Replies View Related

C++ :: Storing A Class With String Members Into Binary Files

Nov 17, 2014

Im trying to make a c++ program for a school project, and i need to store the information into binary files, but I'm having some problems trying to store a class with string members, for example:

class whatever{
protected:
string name;
public:
(List of functions)
}

But if I do that, my code just dont work when I write and read a binary file, but if I change the string to char array, for example:

class whatever{
protected:
char name[20];
public:
(List of functions)
}

It works good, so I wanted to know if there's some way to store a class wiht strings in binary files, or what am I doing wrong?

View 4 Replies View Related

C++ :: Access To Data Of Array While Have Its Name As String

Jul 31, 2013

The problem is as following. First, I have 21 arrays named: integer abee1, abee2, ... , abee20 and myarray all with the same dimension of [51][4]. Next, in a loop of 20 circles, I fill myarray with random integers then copy it into abee1-20 (each one per iteration). Then, for each array (abee1-20), I want to calculate sum of all numbers in second column as cost of that array and store it in the a new array called arrayCosts[20][2] ( char arrayName, int arrayCost)- the name of array in the arrayName column and cost of that array into arrayCost column . After that, I want to sort arrayName based on the cost and extract the 3 top array with lowest cost. I know that I should do a search in the array to find these three. Finally, copy these three into 3 new array called elite1, elite2, elite3.I do not know what to do.

1-The following code is for making the sting name of abee1-20 in string made in each step of the loop.

for ( cc = 1 ; cc < 20; cc++)
{ string String = static_cast<ostringstream*>( &( ostringstream () << cc) )->str();
string array_name = "abee" + String;

I want to use array_name (for example in the first loop which array_name is “abee1” ) for reaching the abee1 (which is a filled array) after dong a search in the array called “arrayCosts”. This search retrieves the name of array but it is string and I want to have the array with the same name.

View 2 Replies View Related

Visual C++ :: Retrieving Size Of Each String In Order To Produce A New Buffer For Concatenated String

Feb 25, 2013

What is the efficiency of the two assignments (line 1 and 2), i.e. (function calls, number of copies made, etc), also the Big O notation. I know there are function calls for retrieving the size of each string in order to produce a new buffer for the concatenated string...any difference between line 1 and 2 in terms of efficiency?

String s("Hello");
String t("There");
1. s = s + t;
2. s += t;

View 3 Replies View Related

C++ :: How To Qsort Array Of Structs By One Of Its Members

Mar 31, 2013

I am versed in qsorting struct members within a struct instance, as in the example below:

Code:
#include <iostream>
#include <stdlib.h>
using namespace std;
struct item_database {

[Code]....

What I CANT do however is to sort an array of structs by one of its members. This is a complete different problem even if it sounds similar.

In other words, the problem is this; Say we have a struct:

Code:
struct item_database {
int key;
string token;
};

Then we declare an array of this struct in the heap:

Code: item_database *idptr = new item_database[700000]; and initialize its values.

How would one go about sorting this heap array of structs by its member function "token"?

I used the following call to qsort (standard library) and call to the compare function but it doesnt work:

Code:
qsort (idptr, 1000, sizeof(string), compare);

Code: int compare (const void* a, const void* b){
if (*(char*)a >= *(char*)b)
return 1;
else
return -1;
}

Or in more lamens terms say we have the following stuct instances:
Key: Token:
1 Hello
2 World
3 How
4 Are
5 You

Then I need those structs to order according to token (alphabetically, increasing or decreasing depending whats in our compare function).....

View 3 Replies View Related

C :: How To Access Members Of Referred Array

Sep 11, 2014

files.c
Code:
#include "include/types.h"
#include "include/gaussian.h"
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>

[Code]....

I need to access the members .name and .filename to allocate memory and copy strings in there.

Code:
files[count]->name=malloc(64);
files[count]->filename=malloc(64); SIGSEGV error

How to make the reference working?

View 12 Replies View Related

C++ :: Why Can Initialize Array Nested In Structure Like Array

Feb 7, 2015

Example :
Code:
struct x {
int v[4];
};
const x test = { 0, 1, 2, 3 };

Why can I do this? How does the compiler know to write to this in the proper way? I get that v would be contiguous. Does that have something to do with it?

View 2 Replies View Related

C/C++ :: How To Initialize Array Of Pointers To Array Of Characters

May 21, 2014

I am trying to initialize an array of pointers to an array of characters, I can do it in 3 lines but I really want to do it in one line at the same time keeping the #define.

3 lines initialization (can compile)
======================
#define A 1
#define B 2
char row1[] = {A|B, B, A};
char row2[] = {B, A};
char *test[]= {row1, row2};

1 line initialization (failed)
===============================
char *test[] = { {A|B, B, A}, {B, A} }; // <- how do i do this??

I do not want this because it waste ROM space
=============================================
char test[][3] = { {A|B, B, A}, {B, A} };

View 18 Replies View Related

C++ :: Initialize Array In A Constructor?

Dec 6, 2013

There are two class.How can I initialize an array of different class in a constructor?

class Ticket{
private:
int ID;

[Code]....

I have to provide a no-argument constructor (Cinema();)to initialize the ticket array and give the right ticket ID.

View 1 Replies View Related

C/C++ :: Initialize Array With Tiles?

May 8, 2014

imagine you have a world class. Than you have a tile class. Now, in the world class is a array with a lot of tiles and I want to initialize them with my imagination(For example I want a grass floor). But how I can do this, the array can only be create with the standard constructor. But it would be stupid and not very fast, that the tiles are first initialized with the standard constructor and than overridden to build the world. Whats the best way to initialize such a array ?

View 12 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved