c++

migrating C++ code from structures to classes

I am migrating some C++ code from structures to classes. I was using structures mainly for bit-field optimizations which I do not need any more (I am more worried about speed than saving space now). What are the general guidelines for doing this migration? I am still in the planning stage as this is a very big move affecting a major p...

STL map - insert or update

I have a map of objects and I want to update the object mapped to a key, or create a new object and insert into the map. The update is done by a different function that takes a pointer to the object (void update(MyClass *obj)) What is the best way to "insert or update" an element in a map? ...

Why does gprof tell me that a function that is called only once from main() is called 102 times?

Hello. I am a beginner, and wrote the following program for fun, to search through a directory and replace every occurrence of one word with another. I call the crt_ls_file() function once, and once only, but gprof tells me it is being called 102 times. I am wondering if anyone knows why this is. I have tried compiling the program will a...

How to create C++ istringstream from a char array with null(0) characters?

I have a char array which contains null characters at random locations. I tried to create an iStringStream using this array (encodedData_arr) as below, I use this iStringStream to insert binary data(imagedata of Iplimage) to a MySQL database blob field(using MySQL Connector/C++'s setBlob(istream *is) ) it only stores the characters upt...

C++: why a self pointer of a struct automatically changes to void*

struct ptr{ int node; ptr *next; ptr(){} ptr(int _node, ptr *_next){ node=_node; next=_next; } }; struct list_t{ ptr *sht; int size; void push(int node){ size++; sht=new ptr(node,sht); } }shthead[100001], comp[200001], tree[200001]; The struct ptr is a smart pointer, be used as a linked l...

C++ invoke explicit template constructor

hello. Can you tell me how to invoke template constructor explicitly (in initializer list)? for example: struct T { template<class> T(); }; struct U { U() : t<void>() {} //does not work T t; }; thanks ...

are runtime linking library globals shared among plugins loaded with dlopen?

I've a C++ program that links at runtime with, lets say, mylib.so. then, the same program uses dlopen()/dlsym() to load a function from myplugin.so, dynamic library that in turn has dependencies to mylib.so. My question is: will the program AND the function in the plugin access the same globals defined in mydlib.so in the same memory ar...

Is it compulsory to learn about Data Structures if you want to be a Java/C++ programmer ?

So do I like really need to learn about them ? Isn't there an interesting way to learn about stacks, linked lists, heaps ,etc ? I found it a boring subject. **While posting this question it showed some warning.Am I not allowed to post such a question ? Admins please clarify and I will delete it :/ Warning :: The question you're asking ...

Is there kind of runtime C++ assembler library around?

Hi guys! For my small hobby project I need to emit machine code from C++ program in runtime. I have base address 0xDEADBEEF and want to write something like this: Assembler a((void*)0xDEADBEEF); a.Emit() << Push(Reg::Eax) << Push(Reg::Ebx) << Jmp(0xFEFEFEFE); Inline assembler isn't my choice because generated machine code is d...

std::map operator[] and automatically created new objects

I'm a little bit scared about something like this: std::map<DWORD, DWORD> tmap; tmap[0]+=1; tmap[0]+=1; tmap[0]+=1; Since DWORD's are not automatically initialized, I'm always afraid of tmap[0] being a random number that is incremented. How does the map know hot to initialize a DWORD if the runtime does not know how to do it? I...

CListView Control has limited length for column text

When I set the column text for CListView more than 271 characters, the rest of my buffer is not present. I set it through LV_COLUMN structure. Is this a known issue for MFC 4.21? ...

vector iterator not dereferencable at runtime on a vector<vector<vector<A*>*>*>

Hi, I have this destructor that create error at runtime "vector iterator not dereferencable". The gridMatrix is a std::vector<std::vector<std::vector<AtomsCell< Atom<T> * > * > * > * > I added the typename and also the typedef but I still have the error. I will move for this idea of vect of vect* of vect* to use boost::multi_array I ...

boost::bind and << operator in C++

I would like to bind the << stream operator: for_each(begin, end, boost::bind(&operator<<, stream, _1)); Unfortunately it does not work: Error 1 error C2780: 'boost::_bi::bind_t<_bi::dm_result<MT::* ,A1>::type,boost::_mfi::dm<M,T>,_bi::list_av_1<A1>::type> boost::bind(M T::* ,A1)' : expects 2 arguments - 3 provided c:\source\repo...

Index of arrays and strings in c++

I want to know from where the index of a string and an array starts from. I am getting a lot of confusion while making programs. While calculating string length of a string is the null character also counted? ...

copy constructor with default arguments

As far as I know, the copy constructor must be of the form T(const T&) or T(T&). What if I wanted to add default arguments to the signature? T(const T&, double f = 1.0); Would that be standards compliant? ...

Problem with inner classes of the same name in Visual C++

I have a problem with Visual C++ 2005, where apparently inner classes with the same name but in different outer classes are confused. The problem occurs for two layers, where each layer has a listener interface as an inner class. B is a listener of A, and has its own listener in a third layer above it (not shown). The structure of the ...

Menubar + Commandbar on WM 5.0 and WM 6.5.3

I'm developing a Windows Mobile application, and I faced a problem with CCommandBar, which combines toolbar and menubar. Well, I mean the following: m_wndCommandBar.InsertMenuBar(IDR_MAINFRAME); m_wndCommandBar.LoadToolBar(IDR_MAINFRAME); I have only one root menu option in my command bar and some buttons in toolbar. It works perfectl...

How to access object slicing?

class A { public: int i; int j; }; class B : public A { public: int k; }; main() { A *a = new B; } is it possible to access slicing data? ...

Copy Constructor in C++

i have this code #include <iostream> using namespace std; class Test{ public: int a; Test(int i=0):a(i){} ~Test(){ cout << a << endl; } Test(const Test &){ cout << "copy" << endl; } void operator=(const Test &){ cout << "=" << endl; } Test operator+(Test& p){ Test res(a+p.a); return res; } }; int main (int argc, ch...

C++ library for generating a SOAP message using WSDL

Hi guys, Do you know of any C++ libraries can can generate SOAP messages using the WSDL. I am writing a C++ client application and am looking for such a library. I however cannot use gSoap and wsdlpull. SOAP Client library (SQLData Systems) looks like another library which could help me (though I am not too sure) but its results page sh...