// ============================================================================
//  p1c03_25  —  3.8.2.3 C/C++中const异同总结
//  来源：川大 C++/LinuxC wiki「02.Qt方向」
//  说明：本文件由 gen_part1.py 合并页面中的教学片段而成。每个片段用
//        // --- 原文片段 [pageId:blockIdx] --- 标注出处。
//        已做最小修正（笔误/平台移植），详见 docs/ERRATA.md。
// ============================================================================

#include <iostream>
using namespace std;

// --- 原文片段 [58954439:24]  3.8.2.3 C/C++中const异同总结 ---
static void block_0() {
    class Person { public: int age = 0; };
        const Person person; //未初始化age
    	//person.age = 50; //不可修改
    	Person* pPerson = (Person*)&person;
    	//指针间接修改
    	pPerson->age = 100;
    	cout << "pPerson->age:" << pPerson->age << endl;
    	pPerson->age = 200;
    	cout << "pPerson->age:" << pPerson->age << endl;
}

// --- main ---
int main() {
    block_0();
    return 0;
}
