The CBC distribution includes a number of .cpp sample files. Users are
encouraged to use them as starting points for their own CBC projects.
The files can be found in the Cbc/examples directory. Most of them can be built by
make DRIVER=name
which produces an executable testit. Below is a list of some of the
most useful sample files with a short description for each file.
Basic Samples:
| Source file | Description | 
|---|---|
| MINIMUMCPP | This is a CBC “Hello, world” program. It reads a problem in MPS file format, and solves the problem using simple branch-and-bound. | 
| SAMPLE2CPP | This is designed to be a file that a user could modify to get a useful driver program for his or her project. In particular, it demonstrates the use of CGL’s preprocess functionality. It uses CbcBranchUser.cpp, CbcCompareUser.cpp and CbcHeuristicUser.cpp with corresponding *.hpp files. | 
    
Advanced Samples:
| Source file | Description | 
|---|---|
| CREWCPP | This sample shows the use of advanced branching and a use of priorities. It uses CbcCompareUser.cpp with corresponding *.hpp files. | 
    
| LONGTHINCPP | This sample shows the advanced use of a solver. It also has coding for a greedy heuristic. The solver is given in CbcSolver2.hpp and CbcSolver2.cpp. The heuristic is given in CbcHeuristicGreedy.hpp and CbcHeuristicGreedy.cpp. It uses CbcBranchUser.cpp and CbcCompareUser.cpp with corresponding *.hpp files. | 
    
| QMIPCPP | This solves a quadratic MIP. It is to show advanced use of a solver. The solver is given in ClpQuadInterface.hpp and ClpQuadInterface.cpp. It uses CbcBranchUser.cpp and CbcCompareUser.cpp with corresponding *.hpp files. | 
    
| SOSCPP | This artificially creates a Special Ordered Set problem. | 
| LOTSIZECPP | This artificially creates a Lot Sizing problem. |