c++

GDI+ not clearing my window on repaint for vista

on WM_PAINT i do the following: //RectF mNameRect; //WCHAR* mName; //HWND mWin; // this is the window handle { PAINTSTRUCT ps; HDC hdc = BeginPaint(mWin, &ps); Graphics g(hdc); g.Clear(Color::White); StringFormat stringForm; stringForm.SetLineAlignment(StringAlignmentCenter); stringForm.SetAlignment(StringAlignmentCenter); // set the...

capture the last WM_SIZE

When I resize my window I want to tell another part of my program that my window has changed size. I read on MSDN that: WM SIZE Message The WM SIZE message is sent to a window after its size has changed. However, I receive the WM_SIZE even when dragging. I noticed that there is also a WM_SIZING message that is sent when my window is re...

Undefined template methods trick ?

A colleague of mine told me about a little piece of design he has used with his team that sent my mind boiling. It's a kind of traits class that they can specialize in an extremely decoupled way. I've had a hard time understanding how it could possibly work, and I am still unsure of the idea I have, so I thought I would ask for help her...

question about ? and : in c++

Why this statement : int a = 7, b = 8, c = 0; c = b>a?a>b?a++:b++:a++?b++:a--; cout << c; is not equal to : int a = 7, b = 8, c = 0; c = (b>a?(a>b?a++:b++):a++)?b++:a--; cout << c; and is equal to : int a = 7, b = 8, c = 0; c = b>a?(a>b?a++:b++):(a++?b++:a--); cout << c; Please give me some reason. Why ? ...

Convert c++ argument to int

Hello, I have a small c++ program that needs to get and argument and convert it to an int. Here is my code so far: #include <iostream> using namespace std; int main(int argc,int argvx[]) { int i=1; int answer = 23; int temp; // decode arguments if(argc < 2) { printf("You must provide at least one argument...

What books are available in market for learning the Windows API for GUI development with C++?

Please give me some titles, preferably not free books. I don't need it to be free; it would be better if published by McGraw Hill, Prentice-Hall, Springer, or any other good publisher. Note that I'm interested here in programming with C++ only. ...

Generic Aggregation of C++ Objects by Attribute When Attribute Name is Unknown at Runtime

I'm currently implementing a system with a number of class's representing objects such as client, business, product etc. Standard business logic. As one might expect each class has a number of standard attributes. I have a long list of essentially identical requirements such as: the ability to retrieve all business' whose industry is...

Detect template presence at compilation time

GCC up to 4.5 doesn't have standard C++0x type trait template has_nothrow_move_constructor. I could use it in my package for optimization, but I don't want to rule out one of the common compilers and don't want to overload configuration with symbols like HAVE_STD_HAS_NOTHROW_MOVE_CONSTRUCTOR. Is it somehow possible to use that template...

pure/const functions in C++

Hi, I'm thinking of using pure/const functions more heavily in my C++ code. (pure/const attribute in GCC) However, I am curious how strict I should be about it and what could possibly break. The most obvious case are debug outputs (in whatever form, could be on cout, in some file or in some custom debug class). I probably will have a ...

pure/const function attributes in different compilers

pure is a function attribute which says that a function does not modify any global memory. const is a function attribute which says that a function does not read/modify any global memory. Given that information, the compiler can do some additional optimisations. Example for GCC: float sigmoid(float x) __attribute__ ((const)); float c...

template; operator (int)

Hi, regarding my Point struct already mentioned here: http://stackoverflow.com/questions/2794369/template-class-ctor-against-function-new-c-standard is there a chance to replace the function toint() with a cast-operator (int)? namespace point { template < unsigned int dims, typename T > struct Point { T X[ dims ]; //umm??? ...

How to overlay direct3d in directshow

I am looking for a tutorial or documentation on how to overlay direct3d on top of a video (webcam) feed in directshow. I want to provide a virtual web cam (a virtual device that looks like a web cam to the system (ie. so that it be used where ever a normal webcam could be used like IM video chats) I want to capture a video feed from ...

C++: Declare a global class and access it from other classes?

I have a class which should be declared globally from main() and accessed from other declared classes in the program, how do I do that? class A{ int i; int value(){ return i;} }; class B{ global A a; //or extern?? int calc(){ return a.value()+10; } } main(){ global A a; B b; cout<<b.calc(); } ...

Selecting size of vector of vectors

I have a class called Grid that declares a vector of vectors like this: typedef vector<int> row; typedef vector<row> myMatrix; myMatrix sudoku_; The constructor looks like this: grid::grid() : sudoku_(9,9) { } As you can see, the constructor is initializing it to be a 9x9 grid. How can I make it work so that the user is asked for...

Difference between C++ Keyboard keycode and JAVA KeyEvent keycode

I noticed a difference between the keycodes that vkCode in C++ gives and the ones that Java's KeyEvent gives us. (Ofcourse the normal characters have the same code (0 => 48 just like the ASCII) but they differ in the other keys). Is there a way to 'translate' them from one to the other (What's the logic behind each one?) or am I supposed...

QApplication In Non-Main Thread

I need to exec() a QApplication in a thread that is not main (my GUIs must be plugins that can be dynamically loaded and unloaded at runtime, so I have no access to the main thread). Does anyone know of a (relatively) painless way to hack around Qt's restriction against starting QApplication outside of main? I'm developing in Linux wit...

Strange fstream problem

Hi, I have really strange problem. In Visual C++ express, I have very simple code, just: #include <fstream> using namespace std; int main() { fstream file; file.open("test.txt"); file<<"Hello"; file.close(); } This same code works OK in my one project, but when I create now project and use this same lines of code, no file test.txt is ...

How to use pointers and pointer aritmetic

: error C2064: term does not evaluate to a function taking 1 arguments : error C2227: left of '->name' must point to class/struct/union/generic type how do i fix this so this error doesn't happen for(int index = 0; index < (numStudents); index++) { if (student(index + 1)->score >= 90 ) student(index + 1)->grade = 'A'; ...

It is good programming practice to always check for null pointers before using an object in C++?

This seems like a lot of work; to check for null each time an object is used. I have been advised that it is a good idea to check for null pointers so you don't have to spend time looking for where segmentation faults occur. Just wondering what the community here thinks? ...

What exactly is a reentrant function?

Most of the times, the definition of reentrance is quoted from Wikipedia: A computer program or routine is described as reentrant if it can be safely called again before its previous invocation has been completed (i.e it can be safely executed concurrently). To be reentrant, a computer program or routine: Must hol...