之前学C。学Python,学的比較多的是Java,作为大家口中更强大的C++,要学学,这次的话,以了解主要的特性和做个小游戏作为目标吧。

1)HelloWorld

Eclipse执行C++之Launch failed,Binary not found

被这个问题困扰了一段时间,还是顺利执行了,第一次用C++写Helloworld。

#include <iostream>
using namespace std; int main() {
cout << "Hello World!" << endl;
return 0;
}

不用IDE时在命令行窗体的指令:F:\>g++ Hello.cpp -o Hello

编译完之后便会有Hello.exe文件。

照样,用新语言写出第一个程序的那种激动。

怎么说。Java的设计也是參考C++的。听过学完C++学Java非常快的。倒是不知道学了Java之后来看C++要多久。看的是《C++程序设计语言》——C++之父——本贾尼·斯特劳斯特卢普。

2)傻瓜问题

VC++和C++

之前没去了解,原来VC++是C++的一个编译环境,提供了Windows界面的库函数,便于开发图形界面的软件。VC++的重点主要是Windows程序设计相关的,可是学好C++是前提。

学C++之前一定要学C吗?

作者在学习之前就提出,注重概念,不要迷失在语言的技术细节上。

事实上有人确实在抱怨说大学一来就学C++,C都没学。事实上不然,直接能够学。

为什么叫C++?

C++,++是增量运算符,C+d的话就是语法错误,为什么不叫D呢。由于是C的扩充。事实上一门语言设计完之后有多人用之后便会成为一种趋势,王垠自己设计了YIN语言,感觉好厉害了。

给C语言学习者的建议

1、C++差点儿不须要宏

# define PI 3.14

上面就是宏。将程序中的PI所有替换为3.14。

2、不用在你须要变量之前声明它。曾经写C麻烦的地方就是变量声明放在后面也会编译出错。

3、不用malloc,new照样能够做好。

3)整体

C++是更好的C,支持面向对象。

C++有的基本类型,int。double。char,bool(不是boolean)。运算符加减乘除。%求余。

检測循环和输入输出。

#include <iostream>
using namespace std; int main() {
cout << "Do you love her?\n";
char answer = 0;
cin >> answer;
cout << answer;
return 0;
} result:
Do you love her?
y
y

C++的输入输出好简单,cout << 和 cin >> ,事实上是c out,c in。

cin >> answer; 将输入赋值给answer。

检測循环。if、else、switch、case、for和while。

指针和数组,见到指针不要怕。

int array[10];   //10个整型数组

int *point;       // 指向int的指针

point = &array[2]; //point指向array第三个元素

数组就像10个房间,指针就是每一个房间的钥匙,&取地址符,能够将一个房间的钥匙给point。

模块化程序设计

namespace Stack{
void push(char c);
char pop();
}
void test(){
Stack::push('a');
Stack::pop();
}

独立的命名空间。Stack::为限定词,指push方法为Stack的push方法,不会与其它push方法互相干扰。

异常处理,有点意思:

namespace Stack {
void push(char c);
char pop();
class OverFlow {};
}
void f() {
throw OverFlow();
}
void d(){
 try{
Stack::push("a");
} catch(Stack::OverFlow) {
//
}
}

定义类型的模块、用户定义类型这两个详细要再看,光光看概述看不是非常懂。

虚函数。编程思想一书中有提到的东西。

面向对象的程序设计,也是有类class,也有继承这东西。

容器,原来template。模板是在这里出现的。

内容非常多,有一些和Java类似。由于Java本来设计就參考了C++了。

最后作者给的忠告非常有意思:

不是学好全部细节才干设计出好的程序,一切随着时间的推移而明朗,当然这段时间你要不听学习。不然不懂还是不懂。关注程序设计而不是语言特征。

C++(一)——HelloWorld的更多相关文章

  1. 使用webstorm+webpack构建简单入门级“HelloWorld”的应用&&引用jquery来实现alert

    使用webstorm+webpack构建简单入门级"HelloWorld"的应用&&构建使用jquery来实现 1.首先你自己把webstorm安装完成. 请参考这 ...

  2. Idea下用SBT搭建Spark Helloworld

    没用过IDEA工具,听说跟Eclipse差不多,sbt在Idea其实就等于maven在Eclipse.Spark运行在JVM中,所以要在Idea下运行spark,就先要安装JDK 1.8+ 然后加入S ...

  3. 菜鸟学Struts2——HelloWorld

    写在前面 自从工作后就过上了只有一个月记忆的生活,太健忘,很多学过的东西因为用得少便忘记了,第二次学习struts,为了以后便于查阅,开始自己的博客之旅.Struts的学习还是从Hello World ...

  4. 初识AngularJS 之 HelloWorld和数据绑定

    1.Hello World 我用的开发工具是   atom   ,大家有需要的话可以找我要安装包嘻嘻 第一步: 写入以下代码: <!DOCTYPE html> <html ng-ap ...

  5. java环境搭建和写出一个Helloworld

    一.安装环境和配置环境变量(必要环节) 安装java并配置环境变量 :在"系统变量"中设置3项属性,JAVA_HOME,PATH,CLASSPATH(大小写无所谓),若已存在则点击 ...

  6. Delphi_01_控制台版HelloWorld

    对于Windows下的控制台编程,我相信很多人都不陌生.而C语言开始的著名的“Hello world”程序基本是学习编程的第一步.我想对于 RAD开发,大家熟悉的一般都是GUI编程,而对于consol ...

  7. Quartz —— 从 HelloWorld 开始

    1.Quartz 是用来完成任务调度的. 2.Quartz 的三个核心概念:调度器.任务.触发器. (1)Job:通过实现该接口来定义需要执行的任务. public interface Job { / ...

  8. 转载文章——从HelloWorld学习操作系统

    转载地址:https://my.oschina.net/hosee/blog/673628?p=%7b%7bcurrentPage+1%7d%7d 本文就将系统性的串联起那些知识点,方便复习和回顾.本 ...

  9. AngularJS 系列 01 - HelloWorld和数据绑定

    目录导读: AngularJS 系列 学习笔记 目录篇 前言: 好记性不如烂键盘,随笔就是随手笔记,希望以后有用. 本篇目录: 1. Hello World 2. AngularJS中的数据绑定 3. ...

  10. iOS系列 基础篇 01 构建HelloWorld,剖析并真机测试

    iOS基础 01 构建HelloWorld,剖析并真机测试 前言: 从控制台输出HelloWorld是我们学习各种语言的第一步,也是我们人生中非常重要的一步. 多年之后,我希望我们仍能怀有学习上进的心 ...

随机推荐

  1. CodeForces - 1017D The Wu

    题面在这里! 比较显而易见的暴力,O(2^(2n) + 2^n * 100) 就可以直接做了 #include<bits/stdc++.h> #define ll long long us ...

  2. hdu 1171 多重背包

    题意:给出价值和数量,求能分开的最近的两个总价值,例如10,20*2,30,分开就是40,40 链接:点我 #include<cstdio> #include<iostream> ...

  3. bzoj 3120 矩阵优化DP

    我的第一道需要程序建矩阵的矩阵优化DP. 题目可以将不同的p分开处理. 对于p==0 || p==1 直接是0或1 对于p>1,就要DP了.这里以p==3为例: 设dp[i][s1][s2][r ...

  4. 安装myeclipse的常见问题

    1.破解myeclipse网站:  https://jingyan.baidu.com/article/acf728fd49519ff8e410a361.html 

  5. IOS-百度地图API用点生成线路、导航、自定义标注 2013年11月更新

    IOS百度地图API开发自定义气泡,点击气泡自动生成路线,以及拖拽IOS百度地图开发POISearch搜索附近停车场,附近加油站IOS百度地图视角跳到用户当前位置IOS百度地图开发实时路况IOS开发百 ...

  6. 解决Visual Studio 2015创建工程时的“DNX SDK version 'dnx-clr-win-x86.1.0.0-beta5' failed to install.”错误

    前段时间发布了Visual Studio2015,在后,发现创建Asp.Net工程和时,出现了"DNX SDK version 'dnx-clr-win-x86.1.0.0-beta5' f ...

  7. IDA 中文字符串

    http://www.pediy.com/kssd/pediy05/pediy50528.htm Ida Pro 的默认设置里对中文字串的支持比较差,对于首字节大于'E0'的都显示成?了.其实...  ...

  8. 详解Java中的clone方法 -- 原型模式 及源码

    http://www.cnblogs.com/cq-home/p/6431426.html http://blog.csdn.net/zhangjg_blog/article/details/1836 ...

  9. unix简史及应用

    Unix 简史 1965年时,贝尔实验室(Bell Labs)加入一项由奇异电子(General Electric)和麻省理工学院(MIT)合作的计画:该计画要建立一套多使用者.多任务.多层次(mul ...

  10. 第一章 Actionscript学习基本知识笔记及flashdevelop软件的安装问题

    OOP:封装.继承.多态. Pubilc :完全公开. Internal:包内类成员可以互相访问. Private:仅当前类可以访问. Protected:当前类和当前类的子类可以访问. 被关键词fi ...