Features in the most general sense are analagous to records in computer science:
In computer science, records (also called tuples, structs, or
compound data) are among the simplest data structures. A record is a value that contains other values, typically in fixed number and
sequence and typically indexed by names. The elements of records are
usually called fields or members.
So a record can be said to have "attributes", e.g. the records in an "attribute table". One of these attributes may be a spatial data structure describing the geographic (or non-geographic -- not every feature has to exist in the real world) coordinates of the entity represented by the record.
In a GIS, often a distinction is made that a feature represents a spatially-enabled record, however this is not always the case.
For example, in FME (the "Feature Manipulation Engine" by Safe Software), features may be spatial or non-spatial. Indeed, you will very often be working with non-spatial features in that environment, e.g. the rows of a CSV file would be considered features.
Regarding your examples of a compass or scale bar, yes, I think these could be considered non-geographical features, because they don't represent real world entities, but they are themselves entities. I would suggest that they are cartographic features, since they represent distances or directions on a map. As such they are features of a map, not features of the Earth. In another sense, one could argue that digital versions of these elements are indeed records in the computer memory/data structures that make up a map; for example in ArcGIS, these might be represented by elements on a page layout, and when you save the map, these records are persisted in structured storage in the form of a map document (MXD) file.