The Latest

DevX - Software Development Resource

The unique() Algorithm

STL’s unique() algorithm eliminates all but the first element from every consecutive group of equal elements in a sequence of elements. unique() takes two forward iterators, the first of which

DevX - Software Development Resource

Signed Bit Fields

A bit field can be signed or unsigned. According to the C++ standard, a signed bit field may be represented in one of three ways: two’s complement one’s complement sign

DevX - Software Development Resource

Creating Immutable Constants

Although usually I don’t recommend using macros in C++ code, there are a few exceptions. One such exception is when you want to create a truly immutable constant. Consider the

DevX - Software Development Resource

Undoing a Macro

If you happen to define an object or a function or a constant whose name collides with a macro located elsewhere in a third-party header file, as in: // file

DevX - Software Development Resource

Take Advantage of Open Source Products

Open source products come with their source code files. Although you can usually install a ready-made executable file, you want to take advantage of the available source code files and

DevX - Software Development Resource

The Scope of Enumerators

The members of an enumerated type are called enumerators. For example: enum Direction { Up, // an enumerator Down // another enumerator }; int main() {} An enumerator’s scope is

DevX - Software Development Resource

Porting Code to a Different Compiler

I receive many questions from readers asking for guidance on how to port an existing C++ app to a different compiler or platform. Porting software can be very easy or

DevX - Software Development Resource

Accessing an Object From Another Process

On modern operating systems, a process consists of an executable file that the OS loads into the system’s memory and executes. A process normally has an entry point and one

DevX - Software Development Resource

Table Columns

Question: How do I drop a table column? Answer: To drop a column, use this syntax: ALTER TABLE Employees DROP COLUMN HomePhone Just remember that you can’t drop a column

DevX - Software Development Resource

Constructor for a Protected Class

Question: How do I create a constructor for a protected member of a class? I have declared the function in the header file but not defined the definition.The error message

DevX - Software Development Resource

Visual Basic Data Access, ADO, OLE/DB

Question: What are the differences between Provider=MSDASQL.1 and Provider=SQLOLEDB.1 in an “Open” “Select” statement? Also, what is the difference (if any) between “ADO” AND “OLE/DB”? And finally, in Visual Basic,

DevX - Software Development Resource

Deadlock Timeouts

Question: I have two questions: 1. How can I determine what the server’s lock mode currently is (e.g. WAIT, NO WAIT, etc.), without actually setting it at the same time?

DevX - Software Development Resource

Outer Joins in Where Clause

Question: What’s the syntax for outer joins in the where clause in Informix? Answer: The syntax is: SELECT c.customer_num, c.lname, c.company,c.phone, u.call_dtime, u.call_descrFROM customer c, OUTER cust_calls uWHERE c.customer_num =

DevX - Software Development Resource

Getting CGI Output

Question: Using C or C++ for CGI programs, is there a way to make a CGI program that calls another CGI program, and then takes the output of that called

DevX - Software Development Resource

uniqueidentifier vs. int

Question: If I have the option of using the uniqueidentifier or int data type for a primary key, will choosing the uniqueidentifier mean a significant performance degradation? Answer: The uniqueidentifier

DevX - Software Development Resource

GetBiosInfo – Retrieve information about the bios

Const HKEY_LOCAL_MACHINE = &H80000002′ Return information about the Bios (NT only)” Requires the GetRegistryValue routineSub GetBiosInfo(BiosDate As String, BiosVersion As String) ‘ These keys appear to exist only on NT

DevX - Software Development Resource

GetCpuInfo – Retrieve information about the CPU

Const HKEY_LOCAL_MACHINE = &H80000002′ Information about the CPU’ you can pass a number 1 to the last argument to retrieve’ information on all the processors in a multi-CPU system” Returns

DevX - Software Development Resource

NumberOfCPUs – The number of processors

Const HKEY_LOCAL_MACHINE = &H80000002′ Return the number of processors” Requires the CheckRegistryKey routineFunction GetNumberOfCPUs() As Integer Dim keyName As String ‘ loop on the subkeys of HKEY_LOCAL_MACHINEHardwareDescriptionSystem ‘ CentralProcessor ‘