ACCU Home page ACCU Conference Page
Search Contact us ACCU at Flickr ACCU at GitHib ACCU at Google+ ACCU at Facebook ACCU at Linked-in ACCU at Twitter Skip Navigation

pinSample Overload Article (title)

Overload test issue   Author: Martin Moene
[Byline] This is a sample to see all the styles an Overload article may have as a webpage. Changed: 15, 4, 3 January 2014, 10 July 2013, Martin Moene

Style and structure of an Overload article on the Web (byline entered separately from article content)

First section

Paragraphs. Paragraphs. Paragraphs.

Text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text. Text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text. Text text text text text text text text. text text text text text text text text text text text text text text text text.

Paragraphs. Paragraphs. Paragraphs.

A Reference

Paragraphs. Paragraphs. Paragraphs.

What has all this got to do with exceptions, you may wonder? Well, the C++ hello-world (this one extracted from The C++ Programming Language [TC++PL]) is functionally similar.

Paragraphs. Paragraphs. Paragraphs.

A Footnote

Paragraphs. Paragraphs. Paragraphs.

Consider a shared library1 which is used by multiple clients.

Paragraphs. Paragraphs. Paragraphs.

A Quote

Paragraphs. Paragraphs. Paragraphs.

This is a quote. (class="quote")

Here's a real quote.

ALGOL 68 was the first (and possibly one of the last) major language for which a full formal definition was made before it was implemented.
~ C.H.A. Koster

Paragraphs. Paragraphs. Paragraphs.

A Block Quote

Paragraphs. Paragraphs. Paragraphs.

This is a block quote. (class="blockquote")

Paragraphs. Paragraphs. Paragraphs.

An Indented Paragraph

Paragraphs. Paragraphs. Paragraphs.

Indented Paragraph. (class="indented").

Paragraphs. Paragraphs. Paragraphs.

An Unordered List

Paragraphs. Paragraphs. Paragraphs.

Unordered list:

  • An item .
  • An item .
  • An item .

Paragraphs. Paragraphs. Paragraphs.

An Ordered List

Paragraphs. Paragraphs. Paragraphs.

Ordered list:

  1. An item .
  2. An item .
  3. An item .

Paragraphs. Paragraphs. Paragraphs.

An Image (non-figure)

Paragraphs. Paragraphs. Paragraphs.

The naïve approach to multiplication is to multiply the underlying integer values and then divide by the scaling factor since

Similarly, for division we have...

Paragraphs. Paragraphs. Paragraphs.

A Figure

The following table has class="sidebartable".

Figure 1

Paragraphs. Paragraphs. Paragraphs.

A Table

The following table has class="journaltable".

Pattern Classification on Purpose Classification on Intent
Abstract Factory Creational Construction
Decorator Structural Extension
Interpreter Behavioural Operation

Paragraphs. Paragraphs. Paragraphs.

A Sidebar Table

The following is a table (class="journaltable") inside a table (class="sidebartable"). The last row contains the title in a td (class="title")

Pattern Classification on Purpose Classification on Intent
Abstract Factory Creational Construction
Decorator Structural Extension
Interpreter Behavioural Operation
Table 1

Paragraphs. Paragraphs. Paragraphs.

A Sidebar Table with a Paragraph

The following is a table (class="sidebartable"). The first row contains the title in a td (class="title")

Printing Errors in C

The C standard library provides two functions for mapping 'error' codes, maintained in the global pseudo-variable errno, into human-readable values. The first, strerror(), returns a non-NULL C-style string mapping any integer value, including all of those defined (both in the standard, and all implementation-defined ones) in errno.h, into a human-readable message. For example:

strerror(ERANGE); → "Result too large"  
strerror(EDOM);   → "Numerical argument out of
                     domain"  
strerror(EMFILE); → "Too many open files"  
strerror(0);      → "No error detected"  
strerror(123456); → "Unknown Error (123456)"  

It's common to pass the current value of errno, to get a string explaining what most recently behaved in a non-normative manner within (the currently executing thread of) your program. There are issues with re-entrancy in the use of strerror(); see STRERROR] for more information.

The second standard library function, perror(), is used to print a message that also includes the message associated with the current value of errno, separated by ": ", as in:

errno = ERANGE;  
perror("oops");  → "oops: Result too large"

Paragraphs. Paragraphs. Paragraphs.

A Program Fragment

The following is a pre (class="programlisting").

// hello-world.cpp
#include <iostream>
int main()
{
    std::cout << "Hello world!" << std::endl;
}

Paragraphs. Paragraphs. Paragraphs.

A program Listing

Paragraphs. Paragraphs. Paragraphs.

The following is table (class="sidebartable") containing a pre (class="programlisting"). The last row contains the title in a td (class="title")

#include <iostream>
int main()
{
    std::cout << "Hello world!" << std::endl;
}
Listing 3

Paragraphs. Paragraphs. Paragraphs.

Specialties

Inline Code

The following paragraph contains (<code>).

The second standard library function, perror(), is used to print a message that also includes the message associated with the current value of errno, separated by ": ".

File Names

The following paragraph contains (class="filename").

Assume fileName is abc.def, and that no such file exists.

Pattern Names

The following paragraph contains (class="pattern").

They prefer PfA (Parameterise from Above) where the application instantiates the required objects and passes them as dependencies via a public interface. This provides greater opportunities to decouple dependencies and dependants via abstract interfaces.

A Lesson or Definition Paragraph

The following style was created for the Quality Matters articles by Matthew Wilson.

The following is a paragraph (class="lesson").

Definition: A contingent report is a block of information output from a program to inform its controlling entity (human user, or spawning process) that it was unable to perform its normative behaviour. Contingent reports are a part of the program logic proper, and are not optional.

Paragraphs. Paragraphs. Paragraphs.

References and ...

[TC++PL] The C++ Programming Language, Special Edition, Bjarne Stroustrup, Addison-Wesley, 2000

1 For the purposes of this discussion, the language is C++ and the platform is Windows and DLLs. However, the principles described also apply to other platforms and languages to a greater or lesser degree. In any case, a stable and consistent ABI between clients and libraries is presumed.

2 Care must be taken with adding a new overload for an existing function, of course!

Overload test issue