Как реализована «const»?

Как компилятор, C или C ++ (например, gcc) соблюдает const Объявление ?

Например, в следующем коде как компилятор отслеживает , что переменная ci имеет значение const и не может быть изменена ?

int
get_foo() {
    return 42;
}

void
test()
{
    int i = get_foo();
    i += 5;

    const int ci = get_foo();
    // ci += 7;  // compile error: assignment of read-only variable ?ci?
}
7
задан Arun 25 October 2011 в 17:21
поделиться