Учитывая контекст и тему статьи, на что ссылается статья, так это на термин «скаляр», как он определен в самом языке Си. На языке C арифметические типы и указатель типы вместе называются скалярными типами (см. 6.2.5 / 21). В повседневном языке мы часто видим эти типы, называемые базовыми типами или встроенными типами (в то время как правильный формальный термин, опять же, скаляр ). Дело в том, что типы scalar предназначены для типов, которые непосредственно (или почти сразу) поддерживаются аппаратными средствами. Большинство неконцептуальных операций в Си работают только со скалярными типами и скалярными типами.
Если вы посмотрите на историю языка C, вы увидите, что ранние версии C были настолько ограничительны скаляр , что вы даже не могли назначить один объект структуры другому объекту структуры ( или передать его функции / вернуть из функции по значению). Возможность делать структурное копирование на основном языке была добавлена в C позже. И по сей день она остается единственной нескалярной операцией на всем базовом языке.
C ++, с другой стороны, как и другие языки более высокого уровня, поддерживает операции с определяемыми пользователем типами , которые по определению не являются скалярными , или с другими типами которые не имеют немедленной поддержки со стороны оборудования.
P.S. Нет, точка зрения, которую пытается изложить статья, не имеет ничего общего с операциями vector , в отличие от операций scalar . Поддержка векторных операций, конечно, полностью ортогональна уровню языка. Вы можете выполнять векторные операции на языках низкого уровня, а также на языках высокого уровня. Термин скаляр используется в том смысле, который я описал выше.