只会 Python 但有算法/数学背景,如何快速进修学习成为 C++ 程序员?
我平常只用Python,不追求速度时做一些简单数学计算很方便,但工作必须学会C++。
回复内容:
我也是先学的Python再学的C++。学了Python对理解OO有一定好处,但是也会让你Spoiled到觉得C++很麻烦,好多工具不够Intuitive。下面是我的进阶路线:基础:找一门入门公开课,比如MIT OCW上的Introduction to C++,或者我们学校的CS11 C++ Track ,把slides浏览一遍,把最后几个作业练习写一写,快速大致了解一下C++的基本语法。
进阶:在oj.leetcode和更高级的online judge上把比较难的题(通过率Effective Programming in C and C++或者我们学校的CS11 Advanced C++ Track。学习和练习template和class inheritance之类的概念。
高级:看书。Effective C++和C++ Primer在这个级别都得要看了,还要学习C++11里面的新东西。另外,暑假实习的时候组里有个GETCO跳槽来的C++大神坐在我旁边,向我推荐了一门很好的课叫Performance Engineering of Software Systems。他说这个课基本上就是为搞Quant Trading System准备的,非常实用。
当然了,我这里的“基础/高级”都是对于我这个渣水平而言的,各位大神见笑了。不过既然题主跟我是同行,想必学C++也是为了开发交易策略用的,那么我觉得上面三步走完基本够用了。 cpp很难吗?用到的时候再看不就好了,空学意义不大 Accelerated C++ (豆瓣) c++primer + effective c++ 我怎么觉得从python到c++和你算法数学没啥关系呢。写好程序是要好算法但是学怎么用语言貌似和算法没啥关系吧 Python大法好,退cpp保平安! 不精通C去学C++,会有麻烦,这事快不了。如果你能用C去实现各种复杂算法,再去学C++,就会容易得多 我觉得会有人让你去翻他的帖子 python和c++的区别主要是在两个大方面:python是动态语言,而c++是静态语言(不过c11之后c++中也引入了动态的概念,比如lambda和auto等),这是一方面;另外就是代码的格式不一样,python是通过缩进的方式来定义作用域,而c++则是通过大括号等。其他的都是相通的了。我曾尝试过python,但是无法忍受他的缩进方式! 个人用C++的时间远大于python就来随便说说。。。以下内容基于个人使用经验,python使用时间不是很多没有做过很大的项目也就是小服务器什么的。。。
python实际上一般都是在描述一个问题的解决流程,因为实际上用python的大部分时间都是在糙快猛啊。。。
而C++一开始就是要思考一个问题在解决时会遇到的事物,而这些事物是怎么关系到这个问题的解决的。。。自顶向下的去解析整个class的树,然后写一堆header,然后填点cpp,完成。。。
STL什么的推荐就是知道一些然后查http://en.cppreference.com/w/就好了。。。
差不多知道个vector知道个map知道个set就差不多了。。。
如果要写比较严谨的项目的话,可能会需要像shared_ptr之类的。。。
推荐先实现一些小东西找一找感觉,比如自己实现一个简单地vector啊之类的。。。

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











VS 코드는 Windows 8에서 실행될 수 있지만 경험은 크지 않을 수 있습니다. 먼저 시스템이 최신 패치로 업데이트되었는지 확인한 다음 시스템 아키텍처와 일치하는 VS 코드 설치 패키지를 다운로드하여 프롬프트대로 설치하십시오. 설치 후 일부 확장은 Windows 8과 호환되지 않을 수 있으며 대체 확장을 찾거나 가상 시스템에서 새로운 Windows 시스템을 사용해야합니다. 필요한 연장을 설치하여 제대로 작동하는지 확인하십시오. Windows 8에서는 VS 코드가 가능하지만 더 나은 개발 경험과 보안을 위해 새로운 Windows 시스템으로 업그레이드하는 것이 좋습니다.

VS 코드 확장은 악의적 인 코드 숨기기, 취약성 악용 및 합법적 인 확장으로 자위하는 등 악성 위험을 초래합니다. 악의적 인 확장을 식별하는 방법에는 게시자 확인, 주석 읽기, 코드 확인 및주의해서 설치가 포함됩니다. 보안 조치에는 보안 인식, 좋은 습관, 정기적 인 업데이트 및 바이러스 백신 소프트웨어도 포함됩니다.

vs 코드에서는 다음 단계를 통해 터미널에서 프로그램을 실행할 수 있습니다. 코드를 준비하고 통합 터미널을 열어 코드 디렉토리가 터미널 작업 디렉토리와 일치하는지 확인하십시오. 프로그래밍 언어 (예 : Python의 Python Your_file_name.py)에 따라 실행 명령을 선택하여 성공적으로 실행되는지 여부를 확인하고 오류를 해결하십시오. 디버거를 사용하여 디버깅 효율을 향상시킵니다.

PHP는 웹 개발 및 빠른 프로토 타이핑에 적합하며 Python은 데이터 과학 및 기계 학습에 적합합니다. 1.PHP는 간단한 구문과 함께 동적 웹 개발에 사용되며 빠른 개발에 적합합니다. 2. Python은 간결한 구문을 가지고 있으며 여러 분야에 적합하며 강력한 라이브러리 생태계가 있습니다.

VS 코드는 파이썬을 작성하는 데 사용될 수 있으며 파이썬 애플리케이션을 개발하기에 이상적인 도구가되는 많은 기능을 제공합니다. 사용자는 다음을 수행 할 수 있습니다. Python 확장 기능을 설치하여 코드 완료, 구문 강조 및 디버깅과 같은 기능을 얻습니다. 디버거를 사용하여 코드를 단계별로 추적하고 오류를 찾아 수정하십시오. 버전 제어를 위해 git을 통합합니다. 코드 서식 도구를 사용하여 코드 일관성을 유지하십시오. 라인 도구를 사용하여 잠재적 인 문제를 미리 발견하십시오.

PHP는 주로 절차 적 프로그래밍이지만 객체 지향 프로그래밍 (OOP)도 지원합니다. Python은 OOP, 기능 및 절차 프로그래밍을 포함한 다양한 패러다임을 지원합니다. PHP는 웹 개발에 적합하며 Python은 데이터 분석 및 기계 학습과 같은 다양한 응용 프로그램에 적합합니다.

VS 코드는 Mac에서 사용할 수 있습니다. 강력한 확장, GIT 통합, 터미널 및 디버거가 있으며 풍부한 설정 옵션도 제공합니다. 그러나 특히 대규모 프로젝트 또는 고도로 전문적인 개발의 경우 VS 코드는 성능 또는 기능 제한을 가질 수 있습니다.

Code vs Code에서 Jupyter 노트북을 실행하는 핵심은 Python 환경이 올바르게 구성되어 있는지 확인하고 코드 실행 순서가 셀 순서와 일치하고 성능에 영향을 줄 수있는 큰 파일 또는 외부 라이브러리를 알고 있어야합니다. VS 코드에서 제공하는 코드 완료 및 디버깅 기능은 코딩 효율성을 크게 향상시키고 오류를 줄일 수 있습니다.
