[C++] 用Xcode来写C++程序[2] 操作变量

用Xcode来写C++程序[2] 操作变量

 

此节讲解包括变量的初始化的几种方式,以及泛型编程的两种变量赋值方式.

 

最基本的变量赋值以及操作:

// operating with variables

#include <iostream>
using namespace std;

int main ()
{
    // 声明变量
    int a, b;
    int result;

    // 赋值
    a = 5;
    b = 2;
    a = a + 1;
    result = a - b;

    // 打印结果
    cout << result;

    return 0;
}

带有构造器的初始化方式:

// initialization of variables

#include <iostream>
using namespace std;

int main ()
{
    int a = 5;   // 普通初始化
    int b(3);    // constructor initialization 构造器初始化
    int c{2};    // uniform initialization     联合初始化 (2011的C++版本中被提出来)
    int result;  // 定义没有赋值的变量

    a = a + b;
    result = a - c;
    cout << result << endl;

    return 0;
}

类型推演赋值:

// initialization of variables

#include <iostream>
using namespace std;

int main ()
{
    /**
     *  类型推演 (会降低程序可读性)
     *
     *  auto
     *  decltype
     *
     */

    // auto
    int foo  = 7;
    auto bar = foo;  // bar与foo类型一致,并且赋了值,其值为7
    cout << bar << endl;

    // decltype
    decltype(foo) cat; // cat与foo类型一致,不过没有赋值
    cout << cat << endl;

    return 0;
}

打印:

7

0

Program ended with exit code: 0

操作字符串:(注意,需要引入头文件string)

// my first string
#include <iostream>
#include <string>

using namespace std;

int main ()
{
    // 定义字符串
    string mystring;

    // 字符串赋值
    mystring = "This is a string";

    // 输出字符串
    cout << mystring << endl;

    return 0;
}

当然,你也可以用以下的几种方式初始化字符串:

string mystring = "This is a string";  // 常规模式
string mystring ("This is a string");  // 构造器模式
string mystring {"This is a string"};  // 联合初始化模式
时间: 2024-12-24 21:19:24

[C++] 用Xcode来写C++程序[2] 操作变量的相关文章

[C++] 用Xcode来写C++程序[5] 函数的重载与模板

用Xcode来写C++程序[5] 函数的重载与模板   此节包括函数重载,隐式函数重载,函数模板,带参数函数模板   函数的重载 #include <iostream> using namespace std; int operate (int a, int b) { return (a * b); } double operate (double a, double b) { return (a / b); } int main () { int x = 5; int y = 2; doub

[C++] 用Xcode来写C++程序[7] Class

用Xcode来写C++程序[7] Class   不带构造函数的Rectangle类 // // Rectangle.h // Plus // // Created by YouXianMing on 15/3/12. // Copyright (c) 2015年 YouXianMing. All rights reserved. // #ifndef __Plus__Rectangle__ #define __Plus__Rectangle__ #include <stdio.h> clas

[C++] 用Xcode来写C++程序[1] 新建C++项目工程

用Xcode来写C++程序[1] 新建C++项目工程   第一节从新建工程并编译C++源码开始   新建工程 源码: // // main.cpp // YeHelloWorld // // Created by XianMingYou on 15/3/5. // Copyright (c) 2015年 XianMingYou. All rights reserved. // #include <iostream> using namespace std; int main() { cout

[C++] 用Xcode来写C++程序[4] 函数

用Xcode来写C++程序[4] 函数     此节包括引用函数,内联函数,防止修改函数入参,函数自身带有默认值. 引用函数:防止复制对象,减少系统开销 内联函数:编译的时候根据具体情形将代码嵌入进去,成不成功编译器说了算,减少系统开销提升性能 引用函数(防止篡改初始值的入参声明方式):防止修改数据源 函数参数带有默认值:函数的某个参数可以给定默认值,精简函数的使用   最简单的函数 #include <iostream> using namespace std; int addition (

[C++] 用Xcode来写C++程序[3] Constants

用Xcode来写C++程序[3] Constants 以下是一些基本数据的含义: 75 // int 75u // unsigned int 75l // long 75ul // unsigned long 75lu // unsigned long 3.14159 // 3.14159 6.02e23 // 6.02 x 10^23 1.6e-19 // 1.6 x 10^-19 3.0 // 3.0 3.14159L // long double 6.02e23f // float 'z'

[C++] 用Xcode来写C++程序[6] Name visibility

用Xcode来写C++程序[6] Name visibility   此小结包括了命名空间的一些使用细节   命名空间 #include <iostream> using namespace std; namespace foo { // 函数 int value() { return 5; } } namespace bar { // 常量 const double pi = 3.1416; // 函数 double value() { return 2*pi; } } int main (

小程序 求解-这里有一题ACM的小题目,求众神解答。帮写个程序。小弟冰天雪地裸奔哭嚎以示感谢!

问题描述 这里有一题ACM的小题目,求众神解答.帮写个程序.小弟冰天雪地裸奔哭嚎以示感谢! 邮局选址: 在一个按照东西和南北方向划分成规整街区的城市里,n 个居民点散乱的分布在不同的街区中.用X坐标表示东西向,用Y坐标表示南北向,各居民点的位置可以有坐标(XY)表示.街区中任意2点(X1,Y1)和(X2,Y2)质检的距离可以用数值丨X1-X2丨+丨Y1-Y2丨度量.居民们希望在城市中选择建立邮局的最佳位置,使n 个居民点到邮局的距离总和最小. 编程任务: 给定n 个居民点的位置,计算n个居民点到

工程-vc++6.0写的程序用vs2010打开需要改变些什么

问题描述 vc++6.0写的程序用vs2010打开需要改变些什么 要整理一个程序 ,不是自己写的,原来是vc++6.0写的,现在用vs2010打开报一些很奇怪的错,都指向头文件,complex 还有string 搞了很长时间了,哪位大神给解答一下,小弟感激不尽啊,谢谢 解决方案 这可能是头文件的错误.因为不同的编译器可能将库文件放在不同的头文件中,所以要想把错误改正,需要了解需要的头文件放在那个库中.其实用遵循统一标准的编译器就可以避免这些问题,可以用linux gcc 编译器! 解决方案二:

java方式来写js程序(demo)

js|程序  javascript应用是非常广泛的,而且功能特别强大,但是javascript程序就是没有java代码好看,这点是好无疑问的,不过因为js应用太广了,在web应用中几乎离不开它,我初学js,总想像写java程序那样写js. 一个是过滤相同的元素:<script src="core.js"></script><script src="collection.js"></script><script&g