千张笔记

Email:rain_qian830@163.com
posts - 28, comments - 42, trackbacks - 0, articles - 0
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

1.namespace(命名空间)
直接用std调用包含在其中的事物。

#include <iostream>
#include 
<string>
//using namespace std;

int main()
{
    std::
string first_name,last_name;
    std::cout 
<< "please enter your first name and last name: ";
    std::cin 
>> first_name >> last_name;
    std::cout 
<< '\n'
          
<< "Hello, "
          
<< first_name
          
<<" "
          
<<last_name
          
<< " and goodbye!\n";

    
return 0;
}

 

std是标准程序库所驻之命名空间(namespace)的名称。标准程序库所提供的任何事物(诸如 string class以及cout,cin这两个iostream类对象)都被封装在命名空间std内。
所谓命名空间(namespace)是一种将程序库名称封装起来的方法。通过这种方法,可以避免和应用程序发生命名冲突的问题(所谓命名冲突是指在应用程序内两个不同的实体(entity)具有相同名称,导致程序无法区分两者。命名冲突发生时,程序必须等到该命名冲突获得决议之后,才能继续执行)。

2.文件的读写

 1#include <iostream>
 2#include <fstream>
 3#include <string>
 4using namespace std;
 5
 6int main()
 7{
 8    ifstream infile( "text0.txt" );
 9    ofstream outfile( "text.txt",ios_base::app );
10    string word;
11
12
13    if!infile )
14    {
15        cerr << "Sorry! Unable to open the inout_file!"<<endl;
16    }

17    else
18    {
19        while( infile >> word )
20        {
21            if!outfile )
22                cerr << "Sorry! Unable to open the output_file!"<<endl;
23            else
24                outfile << word <<" ";
25        }

26    }

27    return 0;
28}

29
注:若我们并不希望丢弃原有内容,而是希望增加新数据到文件中,可以用ios_base::app,表示以追加模式开启文件。
        如果想要同时读写同一个文件,可以定义一个fstream对象,以下列方式打开:
        fstream iofile( "text.txt",ios_base::in | ios_base::out | ios_base::app);
        iofile.seekg(0)可以将文件位置重新定位至文件的起始处。由于此文件是以追加模式开启,因此,任何写入操作都会将数据附加于文件最末端。

Feedback

# re: 【原】《Essential C++》学习笔记(第一章)  回复  更多评论   

2009-02-25 22:59 by tanguo
不错不错。*_*

刚看到一篇文章不错。名字空间和C兼容问题。特意的查了一下。

using namespace std; 在c++的yvals.h中定义的。
所以要include C++的某个库文件,才能用 using namespace std;

C++保持了C库函数兼容性,带点h可以直接 #include进去,(注意extern "C" ).然后在程序中可以调用c的库函数了。

同时 C++也都提供 C库文件的C++版本。去掉了C头文件的点h
但是 部分还在在前面加了个C如stdio.h 的是cstdio.h。
注意的<string.h>升级是<cstring>
而string 是C++新的库文件。

C++标准是推荐使用C++的库文件。

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理