What's with the "Afx" in StdAfx.h?

Viewed 10231

I'm just curious what Afx stands for. And what about Fx in FxCop?

4 Answers

From Wikipedia:

One interesting quirk of MFC is the use of "Afx" as the prefix for many functions, macros and the standard precompiled header name "stdafx.h". During early development what became MFC was called "Application Framework Extensions" and abbreviated "Afx". The name Microsoft Foundation Classes (MFC) was adopted too late in the release cycle to change these references.

The old Stingray MFC FAQ (no longer found on their website, link is to ancient version):

In the beginning, Microsoft created a group called the AFX group
(stands for (A)pplication (F)ramework(X)).

[...]

The AFX group was actually responsible for two things: the MFC library and the IDE's support for MFC (namely, the resource editor and the wizards). The AFX name was dropped in April 1994, and the group's members simply became part of smaller teams within the Visual C++ group. One of those smaller teams is today's MFC team.

Just FYI, gstercken's answer in codeguru.com mentions about "x" in Afx.

(emphasis mine)

The first version of MFC has started being developed in 1989 by a group at Microsoft known as the application framework technology development goup - known as the AFX group. According to a widespread belief, AFX stands for "Application Framework eXtension". According to George Shepherd and Scot Wingo, however, the legend goes like this: "AF" didn't sound so great by itself, to they added "X" to get a three-letter acronym. The X doesn't really mean anything.

It's significance? Well, you will encounter Afx as a prefix for some functions and constants in MFC. It's significance is purely historical - it shows us how they called the framework internally, before it shipped under the name MFC 1.0 in 1992.

Related