mirror of
https://github.com/Light-City/CPlusPlusThings.git
synced 2026-10-28 19:04:45 +08:00
- const README: rewrite the space-saving claim per issue #5 follow-ups (constant-expression const vs #define immediates; which const qualify as constant expressions) - const README: fix the class-section diagnosis per issue #338 (overload resolution picks the const overload; the restriction only surfaces once that overload is removed) - sizeof README: virtual-inheritance result is compiler-dependent (GCC merges vbptr+vfptr -> 16, MSVC keeps them separate -> 32) #246 - static README: new section on internal linkage / access restriction with anonymous-namespace comparison #142 - 10-day practice: full problem list table + fixed day links #136 - new design_pattern/singleton/singleton_default.hpp: reusable thread-safe CRTP singleton template, compile+concurrency tested #303
本文档由 C++那些事网站 同步生成,网站版本含多语言与更新排版。
C++ Jupyter Notebook 交互
在Python中我们可以使用Jupyter Notebook直接看到结果,例如:
l = [1,2]
l
直接输出:
[1,2]
那当使用C++的时候,例如:
map<string, int> mp{
{"one", 1},
{"two", 2},
{"three", 3},
{"four", 4}
};
如果要输出,就得循环遍历,可否直接输出结果呢?
so easy!!! Jupyter Notebook可以解决一切问题,哈哈~
如何在Jupyter中玩C++?
在github上有一个仓库,如下所示:
xeus-cling 是一个用于C++的Jupyter内核,基于C++解释器和Jupyter协议xeus的原生实现。
目前,支持Mac与Linux,但不支持Windows。
安装也是非常简单,首先安装好Anaconda,在里面创建一个虚拟环境:
conda create -n cling
切换进去:
conda activate cling
给新环境安装jupyter和notebook
conda install jupyter notebook
使用conda-forge安装xeus-cling
conda install xeus-cling -c conda-forge
为了加速安装,请记得给Anaconda配置源!
检查是否安装好了内核(kernel):
jupyter kernelspec list
输出:
python3 /home/xxx/anaconda3/envs/cling/share/jupyter/kernels/python3
xcpp11 /home/xxx/anaconda3/envs/cling/share/jupyter/kernels/xcpp11
xcpp14 /home/xxx/anaconda3/envs/cling/share/jupyter/kernels/xcpp14
xcpp17 /home/xxx/anaconda3/envs/cling/share/jupyter/kernels/xcpp17
打开Jupyter Notebook,就可以看到看到kernel了。
启动Jupyter Notebook:
jupyter-notebook
如何在Jupyter中玩C?
只需要安装c kernel即可!
可以直接在当前环境中创建c kernel,也可以新开一个环境安装,下面是在当前环境中直接安装。
pip install jupyter-c-kernel
install_c_kernel
jupyter kernelspec list
此时,就输出:
c /home/light/anaconda3/envs/cling/share/jupyter/kernels/c
python3 /home/light/anaconda3/envs/cling/share/jupyter/kernels/python3
xcpp11 /home/light/anaconda3/envs/cling/share/jupyter/kernels/xcpp11
xcpp14 /home/light/anaconda3/envs/cling/share/jupyter/kernels/xcpp14
xcpp17 /home/light/anaconda3/envs/cling/share/jupyter/kernels/xcpp17
启动Jupyter Notebook:
jupyter-notebook