c++

operator << : std::cout << i << (i << 1);

Hi, I use the stream operator << and the bit shifting operator << in one line. I am a bit confused, why does code A) not produce the same output than code B)? A) int i = 4; std::cout << i << " " << (i << 1) << std::endl; //4 8 B) myint m = 4; std::cout << m << " " << (m << 1) << std::endl; //8 8 class myint: class myint...

Boost Shared Pointer: Simultaneous Read Access Across Multiple Threads

I have a thread A which allocates memory and assigns it to a shared pointer. Then this thread spawns 3 other threads X, Y and Z and passes a copy of the shared pointer to each. When X, Y and Z go out of scope, the memory is freed. But is there a possibility that 2 threads X, Y go out of scope at the exact same point in time and there is ...

JSON_Spirit: good examples of unpacking a JSON string?

Any good examples/tutorials of unpacking JSON strings with the C++ JSON_Spirit library? Something that can traverse a json_spirit::Value object and pretty-print it would be ideal. ...

looser throw specifier for in C++

I am getting an error that says: error: looser throw specifier for 'virtual CPLAT::CP_Window::~CP_Window()' On the destructor, I have never heard of this before and some Google Searches say this might be a GCC 4 problem, which I would not be sure how to work around since I need GCC 4 to build a Universal Binary. My Environment: OS X 1...

Why won't this compile and how can it be implemented so that it does?

Here is some C++ code I'm playing around with: #include <iostream> #include <vector> #define IN , #define FOREACH(x,y) for(unsigned int i=0;i<y.size();i++) { x=y[i]; #define ENDFOREACH } using namespace std; int main() { vector<int> ints; ints.push_back(3); ints.push_back(4); ints.push_back(5); ints.push_back(6); ...

Class Declaration in C++

What does it mean when a class is declared like this: class CP_EXPORT CP_Window : public CP_Window_Imp What is the CP_EXPORT portion? What does it mean/imply? ...

How can I get this code involving unique_ptr to compile?!

#include <vector> #include <memory> using namespace std; class A { public: A(): i(new int) {} A(A const& a) = delete; A(A &&a): i(move(a.i)) {} unique_ptr<int> i; }; class AGroup { public: void AddA(A &&a) { a_.emplace_back(move(a)); } vector<A> a_; }; int main() { AGroup ag; ag.Ad...

Is it possible to declare two variables of different types in a for loop?

Is it possible to declare two variables of different types in the initialization body of a for loop in C++? For example: for(int i=0,j=0 ... defines two integers. Can I define an int and a char in the initialization body? How would this be done? ...

Doxygen ignoring inherited functions, when class inherits privately but the functions declared public again

Sorry for long winded title, this makes a lot more sense with an example. Suppose we have a class A: class A { public: void someFunction(); void someOtherFunction(); }; And another class that privately inherits from A. However, we re-declare one of the inherited functions as public: class B : private A { publ...

replacing space with %20

The following program replaces all spaces with %20.the compilation works fine but the program terminates during the runtime.Any help??? #include<iostream> #include<string> using namespace std; void removeSpaces(string url){ int len=url.length(); int i,count=0; while(i<=len){ if(url[i]==' ') count++; i++; } int length2=len+(count*2); s...

GDB doesnt like my typedef

It seems that the following is to deep for the debugger in Qt even though the program uses it without problem typedef QMap <int, QStringList> day2FileNameType; typedef QMap <int, day2FileNameType> month2day2FileNameType; typedef QMap <int, month2day2FileNameType> year2month2day2FileNameType; year2month2day2FileNameType y2m2d2f; now t...

Potential problems porting to different architectures

I'm writing a Linux program that currently compiles and works fine on x86 and x86_64, and now I'm wondering if there's anything special I'll need to do to make it work on other architectures. What I've heard is that for cross platform code I should: Don't assume anything about the size of a pointer, int or size_t Don't make assumption...

JSON_Spirit: mapping value.type() back to the type?

You can display a Value's type like this: cout << val.type() << end; and it print a number. How can I map this number back to the actual type? besides peeking in the header file, of course, which reveals all... enum Value_type { obj_type,array_type,str_type,bool_type,int_type,real_type,null_type }; ...

Question about C++ inner class

HI, In C++ inner class, class A { public: void f1(); private: void f2(); class B { private void f3(); }; } Does an inner class (B) has a pointer to its parent class (A)? (like it does in Java). And can B calls its parent class public/private method (like it does in Java). Thank you. ...

Change character automatically whilst being input in c++?

Hi there, I'm having trouble working this out. Basically my program has a standard input, I want to modify this so if the user enters a space it automatically replaces it with a / whilst they're typing. I have no idea how i'd even go about doing this or if it is even possible so I am grateful for any help either way. ...

Question on boost array initializer

I am trying to understand the boost array. The code can be read easily from author's site. In the design rationale, author (Nicolai M. Josuttis) mentioned that the following two types of initialization is possible. boost::array<int,4> a = { { 1, 2, 3 } }; // Line 1 boost::array<int,4> a = { 1, 2, 3 }; // Line 2 In my experimen...

How to accomplish covariant return types when returning a shared_ptr?

using namespace boost; class A {}; class B : public A {}; class X { virtual shared_ptr<A> foo(); }; class Y : public X { virtual shared_ptr<B> foo(); }; The return types aren't covariant (nor are they, therefore, legal), but they would be if I was using raw pointers instead. What's the commonly accepted idiom to work around thi...

How to prevent anyone from stealing my shared_ptr?

So, I use boost::shared_ptr for all the various reference-counting benefits it provides -- reference counting for starters, obviously, but also the ability to copy, assign, and therefore store in STL Containers. The problem is, if I pass it to just one "malicious" function or object, the object can save the ptr and then I'll never be ab...

Win32 API prevent standby

What is the Win32 api function that prevents the system from going into standby? Some programs use it, which is pretty annoying in my opinion. I know there's a couple of WM_SYSCOMMAND messages you can trap to prevent the screensaver from coming on.. ...

Sending an int array through Winsocks

I'm trying to send an int array through Winsocks. I might be wrong, but I'm pretty sure only a char* is supported so I'm kind of stuck on how to do this properly. There are also problems with little/big edian, so what would be a good way to do this? I've already asked a question of converting int array to char but it was recommended to s...