Click here to Skip to main content
14,984,032 members
This competition has ended

Best C++ Article of June 2014

Contribute to CodeProject and you'll automatically be in the running for a monthly prize!

Each month at CodeProject we gather together the best of the articles submitted the previous month and ask our readers to choose the best of the best. Entry is automatic - just submit you articke and we'll do the rest.

Check out the submission guidelines for information on posting articles.

Current Entries

Articles that match the contest criteria are automatically entered.

Please Sign up or sign in to vote.
11 Jun 2014
Steve Wellens
There was a question from a student over on the Asp.Net forums about improving site performance. The concern was that every time an app setting was read from the Web.Config file, the disk would be accessed. With many app settings and many users, it was believed performance would suffer.
Please Sign up or sign in to vote.
2 Jun 2014
Bartlomiej Filipek
How memory access patterns can influence performance of your code
Please Sign up or sign in to vote.
26 Jun 2014
zdf
A solution for conversion of a non-undoable application to an undoable one.
Please Sign up or sign in to vote.
9 Jun 2014
IInjac
CodeProject In the first part of this series you learned about the basic differences between the JavaScript and the managed backend. This part will introduce you to the basics of ASP .NET and OWIN.
Please Sign up or sign in to vote.
12 Jun 2014
Jacob F. W.
Dividing and Modulo with a 128 Bit Unsigned Integer
Please Sign up or sign in to vote.
19 Jun 2014
KarstenK
Using the Wincrypto in the Windows SDK
Please Sign up or sign in to vote.
12 Jun 2014
M.Hussain.
Session variables management
Please Sign up or sign in to vote.
25 Jun 2014
Darryl Bryk
Code is described for a multi-document interface (MDI) image processing application utilizing the CImage class in C++
Please Sign up or sign in to vote.
12 Jun 2014
Jacob F. W.
Bit Operations on a 128 Bit Unsigned Integer
Please Sign up or sign in to vote.
17 Jun 2014
Nish Nishant
This is an overview of the Microsoft Azure Storage Client Library for C++ with basic code snippets
Please Sign up or sign in to vote.
26 Jul 2014
John Underhill
CSRG random generator in C# and the NIST STS Library (Huge update!)
Please Sign up or sign in to vote.
8 Jun 2014
Nitesh Luharuka
How To Find Controls present in HeaderTemplate or FooterTemplate of Repeater Control in ASP.NET
Please Sign up or sign in to vote.
15 Jun 2014
Michael Haephrati
Target Eye uses an outdated approach for hiding files and yet it is recently becoming practical
Please Sign up or sign in to vote.
21 Jun 2014
Paul M Watt
I would like to devote this entry to further discuss the Typelist data type. Previously, I explored the Typelist[^] for use in my network library, Alchemy[^]. I decided that it would be a better construct for managing type info than the std::tuple.
Please Sign up or sign in to vote.
8 Jun 2014
Debabrata_Das
C program to display calendar of any given month and year (mm-yyyy)
Please Sign up or sign in to vote.
10 Jun 2014
Hari Mahadevan
A simple C++ class framework for writing Windows services
Please Sign up or sign in to vote.
1 Jun 2014
Vedat Ozan Oner
A new serial LCD library for Arduino with the power of 'Print' class
Please Sign up or sign in to vote.
8 Jun 2014
Bartlomiej Filipek
Flexible Particle System - Updaters
Please Sign up or sign in to vote.
12 Jun 2014
stevic
Finding Fibonacci sequence can be done by a simple logic, but we can solve it too with a Math formula
Please Sign up or sign in to vote.
3 Jun 2014
Mikhail Semenov
Defining ranges with steps that can be used in for-loops
Please Sign up or sign in to vote.
24 Sep 2014
Jeroen De Maeijer
This is an alternative for "Simple Windows Service in C++"
Please Sign up or sign in to vote.
10 Jun 2014
Santosh Sharma (go2santosh)
Finally iOS developers get a new programming language as advanced as C# and Java
Please Sign up or sign in to vote.
3 Jul 2014
Rob Kraft
A method is idempotent when the same input(s) always return the same output.  This method is idempotent: This method is not idempotent: When adding methods to classes, many developers spend little time deciding if the method should be idempotent.  Making use of the properties in the class causes the
Please Sign up or sign in to vote.
16 Jun 2014
ravenspoint
This is an alternative for "Simple DXF Reader/Viewer with Spline Support"
Please Sign up or sign in to vote.
8 Jun 2014
Nick Alexeev
I'm advocating for the use of Hungarian notation in microcontroller code
Please Sign up or sign in to vote.
9 Jun 2014
Bilel Msekni
How to properly replace base classes with sub classes in WCF contracts ?
Please Sign up or sign in to vote.
13 Jun 2014
Jason Stern2
This is a simple Windows example using the Chromium embedded framework 3.
Please Sign up or sign in to vote.
13 Jun 2014
Michael Gledhill
How to add an fade-in message to your iPhone app in 5 minutes
Please Sign up or sign in to vote.
5 Jun 2014
Akash Ashok Jain
What are the Changes in .NET 4.0 Security Model & What is Sandboxing?
Please Sign up or sign in to vote.
9 Jun 2014
PeteBarber
As a way to learn Swift I decided to have a play with Sprite Kit. One of the first things I did was to create a subclass of SKSpriteNode. This has a very handy initializer:init(imageNamed name: string) (in Swift)-(instanceType)initWithImageNamed:(NString*)name (in Objective-C)I then derived from thi
Please Sign up or sign in to vote.
16 Jun 2014
Imran Abdul Ghani
ASP.NET MVC is a framework that facilitates building web applications based on MVC (Model-View-Controller) design pattern. Request coming from client reaches the Controller through URL Rewriting Module. Controller decides which model to use in order to fulfill the request. Further passing the Model
Please Sign up or sign in to vote.
20 Jun 2014
M Sheik Uduman Ali
Don’t use elephant for your garden work

Current Participants

Those with articles that match the contest criteria are automatically entered.

Debabrata_Das
Product Manager
India India
I'm Debabrata Das, also known as DD. I started working as a FoxPro 2.6 developer then there is a list of different technologies/languages C, C++, VB 6.0, Classic ASP, COM, DCOM, ASP.NET, ASP.NET MVC, C#, HTML, CSS, JavaScript, jQuery, SQL Server, Oracle, No-SQL, Node.Js, ReactJS, etc.

I believe in "the best way to learn is to teach". Passionate about finding a more efficient solution of any given problem.
Akash Ashok Jain
Software Developer (Senior)
India India
I am "Akash Jain" working in IT Industry from last 6 years. From the beginning of my career I worked with C# for both windows and web application. In my short career I worked for 2 Major ERP Applications, e-commerce applications, CMS based applications and also few static websites.

I am a MCP for web application for ASP.NET 4.0. I have also done PMP training as project management is one of my interest area.
Bartlomiej Filipek
Software Developer
Poland Poland
Software developer interested in creating great code and passionate about teaching.

Author of C++17 In Detail - a book that will teach you the latest features of C++17!

I have around 11 years of professional experience in C++/Windows/Visual Studio programming. Plus other technologies like: OpenGL, game development, performance optimization.

In 2018 I was awarded by Microsoft as MVP, Developer Technologies.

If you like my articles please subscribe to my weekly C++ blog or just visit www.bfilipek.com.
Bilel Msekni
Engineer
France France
Living by this code ".. Technology was created to provide solutions ..", i'm a challenge lover, discipline enforcer and a team player. Above all, i'm a software engineer who likes to solve problems through technology.
Darryl Bryk
United States United States
No Biography provided
Dilan Shaminda
Software Developer
Sri Lanka Sri Lanka
No Biography provided
Hari Mahadevan
Software Developer IBM
Taiwan Taiwan
Developer with expertise on drivers, daemons and applications, both legacy desktop apps and new age web based apps. My choice of programming languages are C++ & Python and I use Django for web based app development.

When not coding, I do a bit of photography, read stuff and love making my hands greasy.

I live in Taipei, work for IBM and am fluent in Chinese.

The views and opinions expressed in this article are mine and do not necessarily reflect the policy or position of my employer.
IInjac
Software Developer ExGrip LCC
Germany Germany
Working as professional freelancer for the last 5 years. Specialized on and addicted to .NET and a huge fan of Windows Azure from the beginning. Socializing people of all areas, from CEO's to co-workers. Consider myself as a social architect.

Now the proud owner of ExGrip LLC - building mobile cloud experiences. Our latest product "Tap-O-Mizer" is shortly in Beta2. It enables you to see what really needs to be changed in your Windows Phone 8 or Windows 8 app (in real-time, if needed), to ensure customer satisfaction.

Started authorship for "Pluralsight - Hardcore Developer Training" and going to publish the first course on Windows Azure soon.

A few years ago I made a major shift from developer to "devsigner".Focusing my creativity also on great user experiences on Windows, Windows 8 and Windows Phone. Utilizing Expression Design, Expression Blend, Photoshop and Illustrator.

I started developing my first programs on a Commodore C64 (basic and assembly) at the age of fourteen years. Later on an Amiga 500 (C++). After that I made the shift to DOS and Windows from version 3.11 and up.

To me the most important part of developing new experiences is to work with creative and outstanding people and to bring new, exciting ideas to life.

I strongly believe that everyone can be a hero if he/she get's pushed and motivated and valued. Therefore, and that under any circumstances: "People first!"

Specialties:Extremely motivated and pushing people to create results.
Imran Abdul Ghani
Software Developer (Senior) Emaratech
United Arab Emirates United Arab Emirates
Imran Abdul Ghani has more than 10 years of experience in designing/developing enterprise level applications. He is Microsoft Certified Solution Developer for .NET(MCSD.NET) since 2005. You can reach his blogging at WCF Tutorials, Web Development, SharePoint for Dummies.
Jacob F. W.
United States United States
No Biography provided
Jason Stern2
United States United States
No Biography provided
Jeroen De Maeijer
Software Developer (Senior) Nubistar B.V.
Netherlands Netherlands
No Biography provided
John Underhill
Network Administrator vtdev.com
Canada Canada
Network and programming specialist. Started in C, and have learned about 14 languages since then. Cisco programmer, and lately writing a lot of C# and WPF code, (learning Java too). If I can dream it up, I can probably put it to code. My software company, (VTDev), is on the verge of releasing a couple of very cool things.. keep you posted.
KarstenK
Software Developer
Germany Germany
I am living in germany and now living from programming for some Years. In my spare time I like sports as jogging, playing football (soccer) and basketball.

We must take care for our planet, because we and our family has no other. And everybody has to do something for it.
M Sheik Uduman Ali
Architect Aditi
India India
Working as Architect for Aditi, Chennai, India.

My Website: www.udooz.net

My Blog: www.udooz.net/blog
M.Hussain.
Software Developer (Senior)
United States United States
My name is Muhammad Hussain. I'm a Software Engineer.
blog
Michael Gledhill
Software Developer
Switzerland Switzerland
I'm a C# developer, working in finance in Zurich, Switzerland.

Author of the PartnerReSearch iPad app, which was a winner of a "Business Insurance Innovation Award" in 2013, and a TechAward2014 "Innovation of the year" award in 2014.

Objective-C is the 2nd hardest language I've ever learned, after German... Wink | ;-)
Michael Haephrati
CEO Secured Globe, Inc.
United States United States
Michael Haephrati, Musician and CEO and co-founder of Secured Globe, Inc. Worked on many ventures starting from HarmonySoft, designing Rashumon, the first Graphical Multi-lingual word processor for Amiga computer. During 1995-1996 he worked as a Contractor with Apple at Cupertino.

You can also Buy me coffee.




Mikhail Semenov
Software Developer (Senior)
United Kingdom United Kingdom
No Biography provided
Nick Alexeev
Systems Engineer Prolitech
United States United States
doing business as Prolitech
Redwood City, CA
http://www.prolifictec.com

blog (mostly technical)
http://reconvolution.blogspot.com
Nish Nishant
United States United States
Nish Nishant is a Principal Software Architect based out of Columbus, Ohio. He has over 17 years of software industry experience in various roles including Lead Software Architect, Principal Software Engineer, and Product Manager. Nish was a Microsoft Visual C++ MVP between 2002 and 2015.

Nish is an industry acknowledged expert in the Microsoft technology stack. He authored C++/CLI in Action for Manning Publications in 2005, and had previously co-authored Extending MFC Applications with the .NET Framework for Addison Wesley in 2003. In addition, he has over 140 published technology articles on CodeProject.com and another 250+ blog articles on his WordPress blog. Nish is vastly experienced in team management, mentoring teams, and directing all stages of software development.

Contact Nish : If you are interested in hiring Nish as a consultant, you can reach him via his google email id voidnish.

Company Website : www.ganymedesoftwaresolutions.com
Nitesh Luharuka
Team Leader Director @ Rebin Infotech
India India
An Independent IT Professional and Consultant on MS Technologies like .Net | MVC | Silverlight | Sharepoint | MS Project Server along with open source CMS Systems like DotNetNuke etc.

I am an enthusiastic technocrat who love to debug problems and solve them. I love writing articles on my website in my spare time. Please visit my Website for more details and subscribe to get technology related tips/tricks.
Paul M Watt
Engineer
United States United States
I am a software architect and I have been developing software for nearly two decades. Over the years I have learned to value maintainable solutions first. This has allowed me to adapt my projects to meet the challenges that inevitably appear during development. I use the most beneficial short-term achievements to drive the software I develop towards a long-term vision.

C++ is my strongest language. However, I have also used x86 ASM, ARM ASM, C, C#, JAVA, Python, and JavaScript to solve programming problems. I have worked in a variety of industries throughout my career, which include:
• Manufacturing
• Consumer Products
• Virtualization
• Computer Infrastructure Management
• DoD Contracting

My experience spans these hardware types and operating systems:
• Desktop
o Windows (Full-stack: GUI, Application, Service, Kernel Driver)
o Linux (Application, Daemon)
• Mobile Devices
o Windows CE / Windows Phone
o Linux
• Embedded Devices
o VxWorks (RTOS)
o Greenhills Linux
o Embedded Windows XP

I am a Mentor and frequent contributor to CodeProject.com with tutorial articles that teach others about the inner workings of the Windows APIs.

I am the creator of an open source project on GitHub called Alchemy[^], which is an open-source compile-time data serialization library.

I maintain my own repository and blog at CodeOfTheDamned.com/[^], because code maintenance does not have to be a living hell.
PeteBarber
Team Leader
United Kingdom United Kingdom
My day job is mostly working in C++ with a bit of C#. I write a fair amount of command line based tools and really wish they could have a GUI front-end to them hence why I spend my spare time working with WPF.

I started a blog few years back but didn't do a lot with it. I've started describing some of the interesting programming things I come across on it. Please take a look.
ravenspoint
Founder Raven's Point Consulting
Canada Canada
No Biography provided
Rob Kraft
Software Developer (Senior) Kraft Software LLC
United States United States
Rob Kraft is an independent software developer for Kraft Software LLC. He has been a software developer since the mid 80s and has a Master's Degree in Project Management. Rob lives near Kansas City, Missouri.
Santosh Sharma (go2santosh)
Architect
United States United States
Over 15 years of experience in in-depth programming, application architecture and design, solution deployments, complex technical troubleshooting, application performance analysis, code optimization, code analysis and reverse engineering, enterprise solution architecture, and enterprise wide technology strategy consulting.

Special interest in awareness of current market scenarios, industry trends, perspectives of industry leaders, effectively using technology to achieve business objectives, and communicate all this in easy to understand way to various stakeholders.
Steve Wellens
EndWell Software, Inc.
United States United States
I am an independent contractor/consultant working in the Twin Cities area in Minnesota. I work in .Net, Asp.Net, C#, C++, XML, SQL, Windows Forms, HTML, CSS, etc., etc., etc.
stevic
Web Developer SDP
Indonesia Indonesia
Freelance Web developer, Artificial Intelligence and Science enthusiast
Vedat Ozan Oner
Engineer Mevoo Ltd
United Kingdom United Kingdom
No Biography provided
zdf
Romania Romania
Just a humble programmer.

Contest Entries and Requirements

  1. The contest period covers the the first day of the month 12AM US Eastern Standard Time and ends the final day of the month at 11:59:59 PM US Eastern Standard Time. All entries must be submitted during this period in order to qualify.
  2. Entries must be an article, or blog entry.
  3. With the exception of the Everything Else category, the article must be tagged with at least one of the tags corresponding to that competition's category (for example, to enter the C# Competition you would need to tag your article with a C# tag).
  4. Articles entries must follow the CodeProject submission guidelines.
  5. No cheating, lying, plagiarizing articles, chicanery, or kicking.
  6. Articles may only be considered for a single category. If an article is eligible for multiple categories (for example, it pertains to both the C# and Web Dev categories), CodeProject editors and judges will decide which category the article shall be entered in.
  7. No author can be nominated twice in the same category.
  8. If an author writes has two separate articles, each article may be considered in their respective categories provided none of the aforementioned rules are broken. For example, if an author wrote two separate articles, one related to C# and one related to VB.NET, the author and articles could be nominated in the C# and VB.NET competitions, respectively.
  9. In the event an author wins multiple competitions, and repeat, identical prizes, the number of prizes issued is solely at the discretion of the prize issuer.
  10. Multiple votes from the same IP will be automatically disqualified.
  11. The judges’ decision is final and no correspondence will be entered into.
  12. Only those who live in jurisdictions in which this contest is legal may enter.
  13. Any breach of the rules and the prize will be awarded to the runner up.
  14. By entering the contest you agree to the rules, conditions of entry, and agree that your member alias and any submitted material can be used for promotional purposes by CodeProject.
  15. Entries shall be deemed to be submitted by the authorized account holder of the email address submitted at the time of entry unless clearly indicated otherwise. "Authorized account holder" is defined as the natural person who is assigned to an email address by an internet access provider, on-line service provider, or other organization (e.g. business, educational institution, etc.) that is responsible for assigning email addresses for the domain associated with the submitted email address.

Eligibility

This competition is open to software development professionals & enthusiasts who are of the age of majority in their jurisdiction of residence; however, residents of Quebec and of the following countries are ineligible to participate due to legal constraints: Cuba, Iran, Iraq, Libya, North Korea, Sudan, and Syria. Employees (or a member of their immediate family) of CodeProject or any of their affiliates, subsidiaries, advertising or promotional agencies are also ineligible to participate. Void where prohibited by law.

How to Enter

Entry is by the submission process described above. Please read the submission requirements before submitting your entry and ensure the article is tagged with at least one of the tags corresponding to that competition's category.

Lost, late, misdirected, or illegible entries will be disqualified. Any entry containing content that CodeProject deems objectionable for any reason will be disqualified. All decisions of CodeProject with respect to any aspect of the competition, including, without limitation, the eligibility of entries, are final and binding on all entrants in all matters as they relate to this competition. CodeProject reserves its right to modify the Rules.

CodeProject assumes no responsibility for lost, late, delayed, destroyed or misdirected mail, voice messages, email or any computer errors or malfunctions. No correspondence will be entered into with entrants.

CodeProject does not assume any responsibility for incorrect or inaccurate capture of entry information, technical malfunctions, human or technical error, lost, delayed or garbled data or transmissions, omission, interruption, deletion, defect or failures of any telephone or computer line or network, computer equipment, software or any combination thereof. Entry materials/data that have been tampered with or altered are void. If for any reason, in the opinion of CodeProject in its sole discretion, the competition is not capable of running as originally planned, or if the administration, security, fairness, integrity or the proper conduct of the competition is corrupted or adversely affected, including by reason of infection by computer virus, bugs, tampering, unauthorized intervention, fraud, technical failures or any other causes beyond its control, CodeProject reserves its right to cancel, terminate, modify, amend, extend or suspend the competition including cancelling any method of entry, and select a winner from previously received eligible entries. CodeProject reserves its right in its sole discretion to disqualify any individual it finds to be tampering with the entry process or the operation of the competition or to be acting in violation of the Rules or otherwise in a disruptive manner. CodeProject reserves its right to seek remedies and damages to the fullest extent of the law for any attempts to deliberately damage the competition web site or to undermine the legitimate operation of this competition. CodeProject shall not be held responsible for any errors or negligence that may arise or occur in connection with the competition including any damage to an entrant's computer equipment, system, software or any combination thereof, as a result of their participation in this competition or from downloading any material from the competition website where applicable.

You must sign in to participate in this contest.
This contest has ended.
1 Jun - 30 Jun 2014